From 21daa46a05e2c3b18749c9182fe6dfb925fd074a Mon Sep 17 00:00:00 2001 From: Ori Pomerantz Date: Wed, 20 Jul 2022 09:28:44 -0500 Subject: [PATCH 1/4] feat(getting-started): Kovan -> Goerli 1. Replacing #115 (branch 20220714-getting-started-goerli) which got contaminated with xdom-comm stuff somehow :-( 2. Adding Foundry 3. Removing Dapptools --- .gitignore | 1 + getting-started/README.md | 268 +- getting-started/assets/remix-connect.png | Bin 234754 -> 169679 bytes getting-started/assets/remix-deploy.png | Bin 0 -> 28234 bytes getting-started/assets/remix-env.png | Bin 35973 -> 51531 bytes getting-started/assets/remix-tx.png | Bin 124813 -> 424408 bytes ...--f39fd6e51aad88f6f4ce6ab8827279cfffb92266 | 1 - getting-started/foundry/foundry.toml | 6 + .../lib/forge-std/.github/workflows/tests.yml | 26 + .../foundry/lib/forge-std/.gitignore | 4 + .../foundry/lib/forge-std/.gitmodules | 3 + .../foundry/lib/forge-std/LICENSE-APACHE | 203 + .../foundry/lib/forge-std/LICENSE-MIT | 25 + .../foundry/lib/forge-std/README.md | 246 + .../lib/forge-std/lib/ds-test/.gitignore | 3 + .../foundry/lib/forge-std/lib/ds-test/LICENSE | 674 + .../lib/forge-std/lib/ds-test/Makefile | 14 + .../lib/forge-std/lib/ds-test/default.nix | 4 + .../lib/forge-std/lib/ds-test/demo/demo.sol | 222 + .../lib/forge-std/lib/ds-test/src/test.sol | 469 + .../foundry/lib/forge-std/src/Script.sol | 14 + .../foundry/lib/forge-std/src/Test.sol | 733 + .../foundry/lib/forge-std/src/Vm.sol | 141 + .../foundry/lib/forge-std/src/console.sol | 1533 + .../foundry/lib/forge-std/src/console2.sol | 1538 + .../forge-std/src/test/StdAssertions.t.sol | 599 + .../lib/forge-std/src/test/StdCheats.t.sol | 193 + .../lib/forge-std/src/test/StdError.t.sol | 124 + .../lib/forge-std/src/test/StdMath.t.sol | 200 + .../lib/forge-std/src/test/StdStorage.t.sol | 321 + getting-started/foundry/lib/package.json | 5 + getting-started/foundry/lib/yarn.lock | 543 + .../out/Contract.s.sol/ContractScript.json | 261 + .../foundry/out/Contract.sol/Contract.json | 58 + .../out/Contract.t.sol/ContractTest.json | 1004 + .../foundry/out/Fail.sol/Fail.json | 199 + .../foundry/out/Greeter.sol/Greeter.json | 1697 + .../out/Greeter.t.sol/GreeterTest.json | 2129 + .../ICrossDomainMessenger.json | 590 + .../foundry/out/Script.sol/Script.json | 521 + getting-started/foundry/out/Vm.sol/Vm.json | 6912 + .../foundry/out/console.sol/console.json | 109680 +++++++++++++++ .../foundry/out/console2.sol/console2.json | 109679 ++++++++++++++ .../foundry/out/test.sol/DSTest.json | 23171 +++ .../foundry/out/test.sol/Test.json | 35891 +++++ .../foundry/out/test.sol/stdError.json | 35290 +++++ .../foundry/out/test.sol/stdMath.json | 35148 +++++ .../foundry/out/test.sol/stdStorage.json | 35225 +++++ getting-started/foundry/remappings.txt | 1 + getting-started/foundry/script/Contract.s.sol | 12 + getting-started/foundry/src/Fail.sol | 12 + getting-started/foundry/src/Greeter.sol | 63 + getting-started/foundry/test/Greeter.t.sol | 40 + getting-started/hardhat/.env.example | 3 + getting-started/hardhat/contracts/Greeter.sol | 8 +- getting-started/hardhat/hardhat.config.js | 11 +- getting-started/truffle/.env.example | 3 + getting-started/truffle/package.json | 2 +- getting-started/truffle/truffle-config.js | 21 +- getting-started/truffle/yarn.lock | 91 +- 60 files changed, 405688 insertions(+), 147 deletions(-) create mode 100644 getting-started/assets/remix-deploy.png delete mode 100644 getting-started/dapptools/keystore/UTC--2022-02-11T02-01-36.256828545Z--f39fd6e51aad88f6f4ce6ab8827279cfffb92266 create mode 100644 getting-started/foundry/foundry.toml create mode 100644 getting-started/foundry/lib/forge-std/.github/workflows/tests.yml create mode 100644 getting-started/foundry/lib/forge-std/.gitignore create mode 100644 getting-started/foundry/lib/forge-std/.gitmodules create mode 100644 getting-started/foundry/lib/forge-std/LICENSE-APACHE create mode 100644 getting-started/foundry/lib/forge-std/LICENSE-MIT create mode 100644 getting-started/foundry/lib/forge-std/README.md create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/.gitignore create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/LICENSE create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/Makefile create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/default.nix create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/demo/demo.sol create mode 100644 getting-started/foundry/lib/forge-std/lib/ds-test/src/test.sol create mode 100644 getting-started/foundry/lib/forge-std/src/Script.sol create mode 100644 getting-started/foundry/lib/forge-std/src/Test.sol create mode 100644 getting-started/foundry/lib/forge-std/src/Vm.sol create mode 100644 getting-started/foundry/lib/forge-std/src/console.sol create mode 100644 getting-started/foundry/lib/forge-std/src/console2.sol create mode 100644 getting-started/foundry/lib/forge-std/src/test/StdAssertions.t.sol create mode 100644 getting-started/foundry/lib/forge-std/src/test/StdCheats.t.sol create mode 100644 getting-started/foundry/lib/forge-std/src/test/StdError.t.sol create mode 100644 getting-started/foundry/lib/forge-std/src/test/StdMath.t.sol create mode 100644 getting-started/foundry/lib/forge-std/src/test/StdStorage.t.sol create mode 100644 getting-started/foundry/lib/package.json create mode 100644 getting-started/foundry/lib/yarn.lock create mode 100644 getting-started/foundry/out/Contract.s.sol/ContractScript.json create mode 100644 getting-started/foundry/out/Contract.sol/Contract.json create mode 100644 getting-started/foundry/out/Contract.t.sol/ContractTest.json create mode 100644 getting-started/foundry/out/Fail.sol/Fail.json create mode 100644 getting-started/foundry/out/Greeter.sol/Greeter.json create mode 100644 getting-started/foundry/out/Greeter.t.sol/GreeterTest.json create mode 100644 getting-started/foundry/out/ICrossDomainMessenger.sol/ICrossDomainMessenger.json create mode 100644 getting-started/foundry/out/Script.sol/Script.json create mode 100644 getting-started/foundry/out/Vm.sol/Vm.json create mode 100644 getting-started/foundry/out/console.sol/console.json create mode 100644 getting-started/foundry/out/console2.sol/console2.json create mode 100644 getting-started/foundry/out/test.sol/DSTest.json create mode 100644 getting-started/foundry/out/test.sol/Test.json create mode 100644 getting-started/foundry/out/test.sol/stdError.json create mode 100644 getting-started/foundry/out/test.sol/stdMath.json create mode 100644 getting-started/foundry/out/test.sol/stdStorage.json create mode 100644 getting-started/foundry/remappings.txt create mode 100644 getting-started/foundry/script/Contract.s.sol create mode 100644 getting-started/foundry/src/Fail.sol create mode 100644 getting-started/foundry/src/Greeter.sol create mode 100644 getting-started/foundry/test/Greeter.t.sol diff --git a/.gitignore b/.gitignore index eb0f225f..b9f2282f 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ optimism # environment variables .env .env.local +*.delme # Packages node_modules/ diff --git a/getting-started/README.md b/getting-started/README.md index ea267909..5166d735 100644 --- a/getting-started/README.md +++ b/getting-started/README.md @@ -1,7 +1,7 @@ # Getting started developing for Optimism [![Discord](https://img.shields.io/discord/667044843901681675.svg?color=768AD4&label=discord&logo=https%3A%2F%2Fdiscordapp.com%2Fassets%2F8c9701b98ad4372b58f13fd9f65f966e.svg)](https://discord-gateway.optimism.io) -[![Twitter Follow](https://img.shields.io/twitter/follow/optimismFND.svg?label=optimismFND&style=social)](https://twitter.com/optimismFND) +[![Twitter Follow](https://img.shields.io/twitter/follow/optimismPBC.svg?label=optimismPBC&style=social)](https://twitter.com/optimismPBC) This tutorial teaches you the basics of Optimism development. Optimism is [EVM equivalent](https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306), meaning we run a slightly modified version of the same `geth` you run on mainnet. @@ -10,49 +10,71 @@ But a few differences [do exist](https://community.optimism.io/docs/developers/b ## Optimism endpoint URL -To access any Ethereum type network you need an endpoint. There are several ways to get one: - -1. [Run a local development node](https://community.optimism.io/docs/developers/build/dev-node/). +To access any Ethereum type network you need an endpoint. There are several ways to get one:a free tier for low usage. 1. For *limited* development use, [Optimism-provided endpoints](https://community.optimism.io/docs/useful-tools/networks/). Note that these endpoints are rate limited, so they are not for use in QA or production environments. -1. For production use there is a number of service providers that provide Optimism endpoints, usually with a free tier for low usage. - * [Alchemy](https://www.alchemy.com/layer2/optimism) - * [Infura](https://infura.io/docs/ethereum#section/Choose-a-Network) - * [QuickNode](https://www.quicknode.com/chains/optimism) ### Network choice -For development purposes we recommend you use either a local development node or [Optimistic Kovan](https://kovan-optimistic.etherscan.io/). +For development purposes we recommend you use either a local development node or [Optimism Goerli](https://blockscout.com/optimism/goerli). That way you don't need to spend real money. -If you need Kovan ETH for testing purposes, [you can use this faucet](https://faucet.paradigm.xyz/). +If you need Goerli ETH for testing purposes, [you can use this faucet](https://faucet.paradigm.xyz/). -The tests examples below all use Optimistic Kovan. +The tests examples below all use Optimism Goerli. ## Interacting with Optimism contracts -We have [Hardhat's Greeter contract](https://github.com/nomiclabs/hardhat/blob/master/packages/hardhat-core/sample-projects/basic/contracts/Greeter.sol) on Optimistic Kovan, at address [0xE0A5fe4Fd70B6ea4217122e85d213D70766d6c2c](https://kovan-optimistic.etherscan.io/address/0xe0a5fe4fd70b6ea4217122e85d213d70766d6c2c). +We have [Hardhat's Greeter contract](https://github.com/nomiclabs/hardhat/blob/master/packages/hardhat-core/sample-projects/basic/contracts/Greeter.sol) on Optimism Goerli, at address [0x106941459A8768f5A92b770e280555FAF817576f](https://blockscout.com/optimism/goerli/address/0x106941459A8768f5A92b770e280555FAF817576f). You can verify your development stack configuration by interacting with it. +As you can see in the different development stacks below, the way you deploy contracts and interact with them on Optimism is identical to the way you do it with L1 Ethereum. + ## Hardhat ### Connecting to Optimism -In [Hardhat](https://hardhat.org/) you edit the `hardhat.config.js` file's `modules.export.networks` to add a definition similar to this one: +In [Hardhat](https://hardhat.org/) you edit the `hardhat.config.js` file: -```js - "optimistic-kovan": { - url: '', - accounts: { mnemonic: } +1. Define your network configuration in `.env`: - } -``` + ```sh + # Put the mnemonic for an account on Optimism here + MNEMONIC="test test test test test test test test test test test junk" + + # URL to access Optimism Goerli + OPTI_GOERLI_URL=https://goerli.optimism.io + ``` + +1. Add `dotenv` to your project: + + ```sh + yarn add dotenv + ``` + +1. Edit `hardhat.config.js`: + + 1. Use `.env` for your blockchain configuration: + + ```js + require('dotenv').config() + ``` + + + 1. Add a network definition in `module.exports.networks`: + + ```js + "optimism-goerli": { + url: process.env.OPTI_GOERLI_URL, + accounts: { mnemonic: process.env.MNEMONIC } + } + ``` ### Greeter interaction @@ -60,47 +82,65 @@ In [Hardhat](https://hardhat.org/) you edit the `hardhat.config.js` file's `modu ```sh cd hardhat yarn - yarn hardhat console --network optimistic-kovan + yarn hardhat console --network optimism-goerli ``` 1. Connect to the Greeter contract: ```js Greeter = await ethers.getContractFactory("Greeter") - greeter = await Greeter.attach("0xE0A5fe4Fd70B6ea4217122e85d213D70766d6c2c") + greeter = await Greeter.attach("0x106941459A8768f5A92b770e280555FAF817576f") ``` -1. Read information from the contact: +1. Read information from the contract: ```js await greeter.greet() ``` 1. Submit a transaction, wait for it to be processed, and see that it affected the state. - Note that the account used by default, [0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266](https://kovan-optimistic.etherscan.io/address/0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266), may not have enough ETH. - In that case, either edit the configuration file to use your own mnemonic or "feed it" using [Paradigm's faucet](https://faucet.paradigm.xyz/) ```js tx = await greeter.setGreeting(`Hello ${new Date()}`) - receipt = await tx.wait() // Doesn't work in Truffle + rcpt = await tx.wait() await greeter.greet() ``` +### Deploying a contract + +To deploy a contract from the Hardhat console: + +``` +Greeter = await ethers.getContractFactory("Greeter") +greeter = await Greeter.deploy("Greeter from hardhat") +console.log(`Contract address: ${greeter.address}`) +await greeter.greet() +``` ## Truffle ### Connecting to Optimism - In [Truffle](https://trufflesuite.com/): -1. Add the `@truffle/hdwallet-provider` package: +1. Define your network configuration in `.env`: ```sh - yarn add @truffle/hdwallet-provider + # Put the mnemonic for an account on Optimism here + MNEMONIC="test test test test test test test test test test test junk" + + # URL to access Optimism Goerli + OPTI_GOERLI_URL=https://goerli.optimism.io ``` -1. Edit the `truffle-config.js` file +1. Add `dotenv` and `@truffle/hdwallet-provider` to your project: + + ```sh + yarn add dotenv @truffle/hdwallet-provider + ``` + + +1. Edit `truffle-config.js`: 1. Uncomment this line: @@ -108,30 +148,37 @@ In [Truffle](https://trufflesuite.com/): const HDWalletProvider = require('@truffle/hdwallet-provider') ``` - 1. Edit `modules.export.networks` to add a definition similar to this one: + 1. Use `.env` for your network configuration: - ```js - "optimistic-kovan": { - provider: () => new HDWalletProvider(, ) + ```js + require('dotenv').config() + ``` + + 1. Add a network definition in `module.exports.networks`: + + ```js + "optimism-goerli": { + provider: () => new HDWalletProvider( + process.env.MNEMONIC, + process.env.OPTI_GOERLI_URL) } ``` + ### Greeter interaction -1. Install the software, compile the contract, and run the console: +1. Compile the contract and run the console: ```sh - cd truffle - yarn truffle compile - truffle console --network optimistic-kovan + truffle console --network optimism-goerli ``` 1. Connect to the Greeter contact: ```js - greeter = await Greeter.at("0xE0A5fe4Fd70B6ea4217122e85d213D70766d6c2c") + greeter = await Greeter.at("0x106941459A8768f5A92b770e280555FAF817576f") ``` 1. Read information from the contact: @@ -141,8 +188,6 @@ In [Truffle](https://trufflesuite.com/): ``` 1. Submit a transaction, wait for it to be processed, and see that it affected the state. - Note that the account used by default, [0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266](https://kovan-optimistic.etherscan.io/address/0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266), may not have enough ETH. - In that case, either edit the configuration file to use your own mnemonic or "feed it" using [Paradigm's faucet](https://faucet.paradigm.xyz/) ```js tx = await greeter.setGreeting(`Hello ${new Date()}`) @@ -150,6 +195,16 @@ In [Truffle](https://trufflesuite.com/): ``` +### Contract deployment + +You deploy a new contract from the console: + +``` +greeter = await Greeter.new("Greeter from Truffle") +console.log(`Contract address: ${greeter.address}`) +await greeter.greet() +``` + ## Remix @@ -157,10 +212,18 @@ In [Truffle](https://trufflesuite.com/): In [Remix](https://remix.ethereum.org) you access Optimism through your own wallet. -1. Log on with your wallet to Optimistic Kovan (or, eventually, Optimistic Ethereum). - If you use the Optimism endpoints, you can do this using [chainid.link](https://chainid.link): - - [Optimistic Kovan](https://chainid.link?network=optimism-kovan) - - [Optimistic Ethereum](https://chainid.link?network=optimism) +1. Add Optimism Goerli to your wallet. + If you use Metamask, [follow the directions here (starting at step 4)](https://help.optimism.io/hc/en-us/articles/6665988048795), with these parameters: + + | Parameter | Value | + | --------- | ----- | + | Network Name | Optimism Goerli | + | New RPC URL | Either a third party provider or https://goerli.optimism.io | + | Chain ID | 420 | + | Currency Symbol | GOR | + | Block Explorer URL | https://blockscout.com/optimism/goerli | + +1. Log on with your wallet to Optimism Goerli. 1. Browse to [Remix](https://remix.ethereum.org/). 1. Click the run icon (). @@ -171,7 +234,7 @@ In [Remix](https://remix.ethereum.org) you access Optimism through your own wall 1. Click the run icon (). -1. Make sure your environment is **Injected Web3** and the network ID is **69**. +1. Make sure your environment is **Injected Web3** and the network ID is **420**. @@ -185,10 +248,10 @@ In [Remix](https://remix.ethereum.org) you access Optimism through your own wall 1. Click the run icon (). - If you do not have Kovan ETH, get some using [Paradigm's faucet](https://faucet.paradigm.xyz/) + If you do not have Goerli ETH, get some using [Paradigm's faucet](https://faucet.paradigm.xyz/) and transfer it to Optimism by sending it to address [0x636Af16bf2f682dD3109e60102b8E1A089FedAa8](https://goerli.etherscan.io/address/0x636Af16bf2f682dD3109e60102b8E1A089FedAa8). 1. Scroll down. - In the At Address field, type the contract address (`0xE0A5fe4Fd70B6ea4217122e85d213D70766d6c2c`). + In the At Address field, type the contract address (`0x106941459A8768f5A92b770e280555FAF817576f`). Then, click **At Address**. Expand the contract to see you can interact with it. @@ -206,78 +269,110 @@ In [Remix](https://remix.ethereum.org) you access Optimism through your own wall 1. See the results on the console and then click **greet** again to see the greeting changed. +### Contract deployment -## Dapp tools +You deploy a new contract: -### Connecting to Optimism +1. Type a string for the greeter. -In [dapp tools](https://github.com/dapphub/dapptools) use this command: +1. Click **Deploy**. -- For a local development node: + - ```sh - export ETH_RPC_URL=https://localhost:8545 - ``` +1. Confirm the transaction in the wallet. -- For the Optimistic Kovan test network: - ```sh - export ETH_RPC_URL=https://kovan.optimism.io:8545 - ``` - -- For the Optimism production network: - ```sh - export ETH_RPC_URL=https://mainnet.optimism.io:8545 - ``` +## Foundry ### Greeter interaction -Dapptools does not give us a JavaScript console. -To interact with the blockchain you use the command line. +Foundry does not give us a JavaScript console, everything can be done from the shell command line. -1. Set the RPC URL and the contract address +1. Set the RPC URL and the contract address. ```sh - cd dapptools - export ETH_RPC_URL=https://kovan.optimism.io - export GREETER=0xE0A5fe4Fd70B6ea4217122e85d213D70766d6c2c + export ETH_RPC_URL= << Your Goerli URL goes here >> + export GREETER=0x106941459A8768f5A92b770e280555FAF817576f ``` 1. Call `greet()`. Notice that the response is provided in hex. ```sh - seth call $GREETER "greet()" + cast call $GREETER "greet()" ``` 1. Call `greet()` again, and this time translate to ASCII ```sh - seth call $GREETER "greet()" | seth --to-ascii + cast call $GREETER "greet()" | cast --to-ascii ``` -1. Run this command to get our wallet's address. - This is the same address we used earlier for Hardhat and Truffle. - In that case, either edit the configuration file to use your own mnemonic or "feed it" using [Paradigm's faucet](https://faucet.paradigm.xyz/) +1. Put your mnemonic in a file `mnem.delme` and send a transaction. ```sh - export ETH_FROM=`seth --keystore=$PWD/keystore ls | awk '{print $1}'` + cast send --mnemonic-path mnem.delme $GREETER "setGreeting(string)" '"hello"' --legacy ``` +1. Test that the greeting has changed: + + ```sh + cast call $GREETER "greet()" | cast --to-ascii + ``` + +### Contract deployment + +Use this command: + +```sh +forge create --mnemonic-path ./mnem.delme Greeter \ + --constructor-args "Greeter from Foundry" --legacy +``` + + +### Using the Optimism contract library + +This library is provided as an [npm package](https://www.npmjs.com/package/@eth-optimism/contracts), which is different from what forge expects. +Here is how you can import it without importing the entire Optimism monorepo: -1. Send a transaction. - When asked for the pass phrase just click Enter. +1. Install the JavaScript tools if you don't already have them: [Node.js](https://nodejs.org/en/download/) and [yarn](https://classic.yarnpkg.com/lang/en/). + +1. Install the `@eth-optimism/contracts` library under `lib`. ```sh - seth --keystore=$PWD/keystore send $GREETER "setGreeting(string)" '"hello"' + cd lib + yarn add @eth-optimism/contracts ``` -1. Test that the greeting has changed: +1. If you are using `git`, add `node_modules` to [`.gitignore`](https://git-scm.com/docs/gitignore). + +1. The remapping that `forge` deduces is not the same as what you would have with hardhat. + To ensure source code compatibility, create a file (in the application's root directory) called `remappings.txt` with this content: + + ``` + @eth-optimism/=lib/node_modules/@eth-optimism/ + ``` + +You can now run `forge build` with contracts that use the Optimism contract library. + +To see this in action: + +1. Install the JavaScript libraries + + ```sh + cd foundry/lib + yarn + ``` + +1. Test the application ```sh - seth call $GREETER "greet()" | seth --to-ascii + cd .. + forge test ``` + + ## Waffle Starting from [Waffle](https://github.com/TrueFiEng/Waffle) v4.x.x you can use Waffle chai matchers to test your smart contracts directly on an Optimism node. @@ -288,12 +383,13 @@ The tutorial makes these assumptions: 1. You have [Node.js](https://nodejs.org/en/) running on your computer, as well as [yarn](https://classic.yarnpkg.com/lang/en/). 1. You have `make` installed on your computer (you can verify this by running `which make` in the terminal). -1. You have a Kovan Optimism address with enough funds on it. You can use this [faucet](https://kovan.optifaucet.com/) to get some free funds. +1. You have a Goerli Optimism address with enough funds on it. You can use [these faucets](https://community.optimism.io/docs/useful-tools/faucets/) to get some free test funds. 1. You have general understanding of smart contracts development. ### Instructions 1. Insert your mnemonic in the [line 15 of `...waffle/test/mock-contract.test.ts`](./waffle/test/mock-contract.test.ts#L15) to use your address in the test. + 1. In the terminal, run the following commands: ```sh @@ -304,20 +400,13 @@ The tutorial makes these assumptions: ``` You should see 2 tests passing. + 1. Play around with the code! Check out other available matchers in the [Waffle documentation](https://ethereum-waffle.readthedocs.io/en/latest/). ### Compatibility with other tools Note that in the tutorial we've been compiling smart contracts using [Waffle](https://github.com/TrueFiEng/Waffle). If you prefer to compile your smart contracts using other tools (like [Hardhat](https://hardhat.org/)) you can install the appropriate packages and modify `build` script in the `package.json` file. -## Moving to mainnet - -When it is time to deploy your application on mainnet, follow these steps: - -1. Use [a bridge](https://app.optimism.io/bridge) to transfer ETH to Optimism mainnet. -1. Where you specify the RCP endpoint URL, use [a mainnet endpoint](https://community.optimism.io/docs/useful-tools/networks/#optimism-mainnet). - - ## Best practices It is best to start development with the EVM provided by the development stack. @@ -327,4 +416,3 @@ After you are done with that development, debug your decentralized application u This lets you debug parts that that are Optimism specific such as calls to bridges to transfer assets between layers. Only when you have a version that works well on a test network should you deploy to the production network, where every transaction has a cost. - diff --git a/getting-started/assets/remix-connect.png b/getting-started/assets/remix-connect.png index af1f1f2defe9594f844544ded45a50ec930dde03..7b3137cd26e18820e1069581d73230a357dbe155 100644 GIT binary patch literal 169679 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%0Dq=B;3didC)1zkW=fvF8H1Ct^@X4OF#o*bzwV% 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 z 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�lIhs#o{D3r#~G8@lSTYjBiPoUr?A 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 literal 0 HcmV?d00001 diff --git a/getting-started/assets/remix-env.png b/getting-started/assets/remix-env.png index 4962f718f449c7099e0cdaf92601fd16228598ba..7348a028b0698d8e2786200d1c6c0662ce605717 100644 GIT binary patch literal 51531 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

h^)ia;arP`9g{`;jm-``rPb~X!$jGa55jv% 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 literal 35973 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 diff --git a/getting-started/assets/remix-tx.png b/getting-started/assets/remix-tx.png index 1470d9e417df0d4b03b9980dc5b2ce570adbe715..6e167c264a1bd591ad2e1be2e3dbcbab35586a04 100644 GIT binary patch literal 424408 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%0D%S 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

0sL>*b*-8V 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

U{%$9@(LKMpoa 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 A?7XzQ55Gr43-=K;KCS`;3?Dy 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]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͓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 uint256) public map_addr; + // mapping(address => Packed) public map_packed; + mapping(address => UnpackedStruct) public map_struct; + mapping(address => mapping(address => uint256)) public deep_map; + mapping(address => mapping(address => UnpackedStruct)) public deep_map_struct; + UnpackedStruct public basicStruct = UnpackedStruct({ + a: 1, + b: 2 + }); + + function hidden() public view returns (bytes32 t) { + // an extremely hidden storage slot + bytes32 slot = keccak256("my.random.var"); + assembly { + t := sload(slot) + } + } +} +``` + +### stdCheats + +This is a wrapper over miscellaneous cheatcodes that need wrappers to be more dev friendly. Currently there are only functions related to `prank`. In general, users may expect ETH to be put into an address on `prank`, but this is not the case for safety reasons. Explicitly this `hoax` function should only be used for address that have expected balances as it will get overwritten. If an address already has ETH, you should just use `prank`. If you want to change that balance explicitly, just use `deal`. If you want to do both, `hoax` is also right for you. + + +#### Example usage: +```solidity + +// SPDX-License-Identifier: Unlicense +pragma solidity ^0.8.0; + +import "forge-std/Test.sol"; + +// Inherit the stdCheats +contract StdCheatsTest is Test { + Bar test; + function setUp() public { + test = new Bar(); + } + + function testHoax() public { + // we call `hoax`, which gives the target address + // eth and then calls `prank` + hoax(address(1337)); + test.bar{value: 100}(address(1337)); + + // overloaded to allow you to specify how much eth to + // initialize the address with + hoax(address(1337), 1); + test.bar{value: 1}(address(1337)); + } + + function testStartHoax() public { + // we call `startHoax`, which gives the target address + // eth and then calls `startPrank` + // + // it is also overloaded so that you can specify an eth amount + startHoax(address(1337)); + test.bar{value: 100}(address(1337)); + test.bar{value: 100}(address(1337)); + vm.stopPrank(); + test.bar(address(this)); + } +} + +contract Bar { + function bar(address expectedSender) public payable { + require(msg.sender == expectedSender, "!prank"); + } +} +``` + +### Std Assertions + +Expand upon the assertion functions from the `DSTest` library. + +### `console.log` + +Usage follows the same format as [Hardhat](https://hardhat.org/hardhat-network/reference/#console-log). +It's recommended to use `console2.sol` as shown below, as this will show the decoded logs in Forge traces. + +```solidity +// import it indirectly via Test.sol +import "forge-std/Test.sol"; +// or directly import it +import "forge-std/console2.sol"; +... +console2.log(someValue); +``` + +If you need compatibility with Hardhat, you must use the standard `console.sol` instead. +Due to a bug in `console.sol`, logs that use `uint256` or `int256` types will not be properly decoded in Forge traces. + +```solidity +// import it indirectly via Test.sol +import "forge-std/Test.sol"; +// or directly import it +import "forge-std/console.sol"; +... +console.log(someValue); +``` diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/.gitignore b/getting-started/foundry/lib/forge-std/lib/ds-test/.gitignore new file mode 100644 index 00000000..63f0b2c6 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/.gitignore @@ -0,0 +1,3 @@ +/.dapple +/build +/out diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/LICENSE b/getting-started/foundry/lib/forge-std/lib/ds-test/LICENSE new file mode 100644 index 00000000..94a9ed02 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/Makefile b/getting-started/foundry/lib/forge-std/lib/ds-test/Makefile new file mode 100644 index 00000000..661dac48 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/Makefile @@ -0,0 +1,14 @@ +all:; dapp build + +test: + -dapp --use solc:0.4.23 build + -dapp --use solc:0.4.26 build + -dapp --use solc:0.5.17 build + -dapp --use solc:0.6.12 build + -dapp --use solc:0.7.5 build + +demo: + DAPP_SRC=demo dapp --use solc:0.7.5 build + -hevm dapp-test --verbose 3 + +.PHONY: test demo diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/default.nix b/getting-started/foundry/lib/forge-std/lib/ds-test/default.nix new file mode 100644 index 00000000..cf65419a --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/default.nix @@ -0,0 +1,4 @@ +{ solidityPackage, dappsys }: solidityPackage { + name = "ds-test"; + src = ./src; +} diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/demo/demo.sol b/getting-started/foundry/lib/forge-std/lib/ds-test/demo/demo.sol new file mode 100644 index 00000000..f3bb48e7 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/demo/demo.sol @@ -0,0 +1,222 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity >=0.5.0; + +import "../src/test.sol"; + +contract DemoTest is DSTest { + function test_this() public pure { + require(true); + } + function test_logs() public { + emit log("-- log(string)"); + emit log("a string"); + + emit log("-- log_named_uint(string, uint)"); + emit log_named_uint("uint", 512); + + emit log("-- log_named_int(string, int)"); + emit log_named_int("int", -512); + + emit log("-- log_named_address(string, address)"); + emit log_named_address("address", address(this)); + + emit log("-- log_named_bytes32(string, bytes32)"); + emit log_named_bytes32("bytes32", "a string"); + + emit log("-- log_named_bytes(string, bytes)"); + emit log_named_bytes("bytes", hex"cafefe"); + + emit log("-- log_named_string(string, string)"); + emit log_named_string("string", "a string"); + + emit log("-- log_named_decimal_uint(string, uint, uint)"); + emit log_named_decimal_uint("decimal uint", 1.0e18, 18); + + emit log("-- log_named_decimal_int(string, int, uint)"); + emit log_named_decimal_int("decimal int", -1.0e18, 18); + } + event log_old_named_uint(bytes32,uint); + function test_old_logs() public { + emit log_old_named_uint("key", 500); + emit log_named_bytes32("bkey", "val"); + } + function test_trace() public view { + this.echo("string 1", "string 2"); + } + function test_multiline() public { + emit log("a multiline\\nstring"); + emit log("a multiline string"); + emit log_bytes("a string"); + emit log_bytes("a multiline\nstring"); + emit log_bytes("a multiline\\nstring"); + emit logs(hex"0000"); + emit log_named_bytes("0x0000", hex"0000"); + emit logs(hex"ff"); + } + function echo(string memory s1, string memory s2) public pure + returns (string memory, string memory) + { + return (s1, s2); + } + + function prove_this(uint x) public { + emit log_named_uint("sym x", x); + assertGt(x + 1, 0); + } + + function test_logn() public { + assembly { + log0(0x01, 0x02) + log1(0x01, 0x02, 0x03) + log2(0x01, 0x02, 0x03, 0x04) + log3(0x01, 0x02, 0x03, 0x04, 0x05) + } + } + + event MyEvent(uint, uint indexed, uint, uint indexed); + function test_events() public { + emit MyEvent(1, 2, 3, 4); + } + + function test_asserts() public { + string memory err = "this test has failed!"; + emit log("## assertTrue(bool)\n"); + assertTrue(false); + emit log("\n"); + assertTrue(false, err); + + emit log("\n## assertEq(address,address)\n"); + assertEq(address(this), msg.sender); + emit log("\n"); + assertEq(address(this), msg.sender, err); + + emit log("\n## assertEq32(bytes32,bytes32)\n"); + assertEq32("bytes 1", "bytes 2"); + emit log("\n"); + assertEq32("bytes 1", "bytes 2", err); + + emit log("\n## assertEq(bytes32,bytes32)\n"); + assertEq32("bytes 1", "bytes 2"); + emit log("\n"); + assertEq32("bytes 1", "bytes 2", err); + + emit log("\n## assertEq(uint,uint)\n"); + assertEq(uint(0), 1); + emit log("\n"); + assertEq(uint(0), 1, err); + + emit log("\n## assertEq(int,int)\n"); + assertEq(-1, -2); + emit log("\n"); + assertEq(-1, -2, err); + + emit log("\n## assertEqDecimal(int,int,uint)\n"); + assertEqDecimal(-1.0e18, -1.1e18, 18); + emit log("\n"); + assertEqDecimal(-1.0e18, -1.1e18, 18, err); + + emit log("\n## assertEqDecimal(uint,uint,uint)\n"); + assertEqDecimal(uint(1.0e18), 1.1e18, 18); + emit log("\n"); + assertEqDecimal(uint(1.0e18), 1.1e18, 18, err); + + emit log("\n## assertGt(uint,uint)\n"); + assertGt(uint(0), 0); + emit log("\n"); + assertGt(uint(0), 0, err); + + emit log("\n## assertGt(int,int)\n"); + assertGt(-1, -1); + emit log("\n"); + assertGt(-1, -1, err); + + emit log("\n## assertGtDecimal(int,int,uint)\n"); + assertGtDecimal(-2.0e18, -1.1e18, 18); + emit log("\n"); + assertGtDecimal(-2.0e18, -1.1e18, 18, err); + + emit log("\n## assertGtDecimal(uint,uint,uint)\n"); + assertGtDecimal(uint(1.0e18), 1.1e18, 18); + emit log("\n"); + assertGtDecimal(uint(1.0e18), 1.1e18, 18, err); + + emit log("\n## assertGe(uint,uint)\n"); + assertGe(uint(0), 1); + emit log("\n"); + assertGe(uint(0), 1, err); + + emit log("\n## assertGe(int,int)\n"); + assertGe(-1, 0); + emit log("\n"); + assertGe(-1, 0, err); + + emit log("\n## assertGeDecimal(int,int,uint)\n"); + assertGeDecimal(-2.0e18, -1.1e18, 18); + emit log("\n"); + assertGeDecimal(-2.0e18, -1.1e18, 18, err); + + emit log("\n## assertGeDecimal(uint,uint,uint)\n"); + assertGeDecimal(uint(1.0e18), 1.1e18, 18); + emit log("\n"); + assertGeDecimal(uint(1.0e18), 1.1e18, 18, err); + + emit log("\n## assertLt(uint,uint)\n"); + assertLt(uint(0), 0); + emit log("\n"); + assertLt(uint(0), 0, err); + + emit log("\n## assertLt(int,int)\n"); + assertLt(-1, -1); + emit log("\n"); + assertLt(-1, -1, err); + + emit log("\n## assertLtDecimal(int,int,uint)\n"); + assertLtDecimal(-1.0e18, -1.1e18, 18); + emit log("\n"); + assertLtDecimal(-1.0e18, -1.1e18, 18, err); + + emit log("\n## assertLtDecimal(uint,uint,uint)\n"); + assertLtDecimal(uint(2.0e18), 1.1e18, 18); + emit log("\n"); + assertLtDecimal(uint(2.0e18), 1.1e18, 18, err); + + emit log("\n## assertLe(uint,uint)\n"); + assertLe(uint(1), 0); + emit log("\n"); + assertLe(uint(1), 0, err); + + emit log("\n## assertLe(int,int)\n"); + assertLe(0, -1); + emit log("\n"); + assertLe(0, -1, err); + + emit log("\n## assertLeDecimal(int,int,uint)\n"); + assertLeDecimal(-1.0e18, -1.1e18, 18); + emit log("\n"); + assertLeDecimal(-1.0e18, -1.1e18, 18, err); + + emit log("\n## assertLeDecimal(uint,uint,uint)\n"); + assertLeDecimal(uint(2.0e18), 1.1e18, 18); + emit log("\n"); + assertLeDecimal(uint(2.0e18), 1.1e18, 18, err); + + emit log("\n## assertEq(string,string)\n"); + string memory s1 = "string 1"; + string memory s2 = "string 2"; + assertEq(s1, s2); + emit log("\n"); + assertEq(s1, s2, err); + + emit log("\n## assertEq0(bytes,bytes)\n"); + assertEq0(hex"abcdef01", hex"abcdef02"); + emit log("\n"); + assertEq0(hex"abcdef01", hex"abcdef02", err); + } +} + +contract DemoTestWithSetUp { + function setUp() public { + } + function test_pass() public pure { + } +} diff --git a/getting-started/foundry/lib/forge-std/lib/ds-test/src/test.sol b/getting-started/foundry/lib/forge-std/lib/ds-test/src/test.sol new file mode 100644 index 00000000..515a3bd0 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/lib/ds-test/src/test.sol @@ -0,0 +1,469 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +pragma solidity >=0.5.0; + +contract DSTest { + event log (string); + event logs (bytes); + + event log_address (address); + event log_bytes32 (bytes32); + event log_int (int); + event log_uint (uint); + event log_bytes (bytes); + event log_string (string); + + event log_named_address (string key, address val); + event log_named_bytes32 (string key, bytes32 val); + event log_named_decimal_int (string key, int val, uint decimals); + event log_named_decimal_uint (string key, uint val, uint decimals); + event log_named_int (string key, int val); + event log_named_uint (string key, uint val); + event log_named_bytes (string key, bytes val); + event log_named_string (string key, string val); + + bool public IS_TEST = true; + bool private _failed; + + address constant HEVM_ADDRESS = + address(bytes20(uint160(uint256(keccak256('hevm cheat code'))))); + + modifier mayRevert() { _; } + modifier testopts(string memory) { _; } + + function failed() public returns (bool) { + if (_failed) { + return _failed; + } else { + bool globalFailed = false; + if (hasHEVMContext()) { + (, bytes memory retdata) = HEVM_ADDRESS.call( + abi.encodePacked( + bytes4(keccak256("load(address,bytes32)")), + abi.encode(HEVM_ADDRESS, bytes32("failed")) + ) + ); + globalFailed = abi.decode(retdata, (bool)); + } + return globalFailed; + } + } + + function fail() internal { + if (hasHEVMContext()) { + (bool status, ) = HEVM_ADDRESS.call( + abi.encodePacked( + bytes4(keccak256("store(address,bytes32,bytes32)")), + abi.encode(HEVM_ADDRESS, bytes32("failed"), bytes32(uint256(0x01))) + ) + ); + status; // Silence compiler warnings + } + _failed = true; + } + + function hasHEVMContext() internal view returns (bool) { + uint256 hevmCodeSize = 0; + assembly { + hevmCodeSize := extcodesize(0x7109709ECfa91a80626fF3989D68f67F5b1DD12D) + } + return hevmCodeSize > 0; + } + + modifier logs_gas() { + uint startGas = gasleft(); + _; + uint endGas = gasleft(); + emit log_named_uint("gas", startGas - endGas); + } + + function assertTrue(bool condition) internal { + if (!condition) { + emit log("Error: Assertion Failed"); + fail(); + } + } + + function assertTrue(bool condition, string memory err) internal { + if (!condition) { + emit log_named_string("Error", err); + assertTrue(condition); + } + } + + function assertEq(address a, address b) internal { + if (a != b) { + emit log("Error: a == b not satisfied [address]"); + emit log_named_address(" Expected", b); + emit log_named_address(" Actual", a); + fail(); + } + } + function assertEq(address a, address b, string memory err) internal { + if (a != b) { + emit log_named_string ("Error", err); + assertEq(a, b); + } + } + + function assertEq(bytes32 a, bytes32 b) internal { + if (a != b) { + emit log("Error: a == b not satisfied [bytes32]"); + emit log_named_bytes32(" Expected", b); + emit log_named_bytes32(" Actual", a); + fail(); + } + } + function assertEq(bytes32 a, bytes32 b, string memory err) internal { + if (a != b) { + emit log_named_string ("Error", err); + assertEq(a, b); + } + } + function assertEq32(bytes32 a, bytes32 b) internal { + assertEq(a, b); + } + function assertEq32(bytes32 a, bytes32 b, string memory err) internal { + assertEq(a, b, err); + } + + function assertEq(int a, int b) internal { + if (a != b) { + emit log("Error: a == b not satisfied [int]"); + emit log_named_int(" Expected", b); + emit log_named_int(" Actual", a); + fail(); + } + } + function assertEq(int a, int b, string memory err) internal { + if (a != b) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + function assertEq(uint a, uint b) internal { + if (a != b) { + emit log("Error: a == b not satisfied [uint]"); + emit log_named_uint(" Expected", b); + emit log_named_uint(" Actual", a); + fail(); + } + } + function assertEq(uint a, uint b, string memory err) internal { + if (a != b) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + function assertEqDecimal(int a, int b, uint decimals) internal { + if (a != b) { + emit log("Error: a == b not satisfied [decimal int]"); + emit log_named_decimal_int(" Expected", b, decimals); + emit log_named_decimal_int(" Actual", a, decimals); + fail(); + } + } + function assertEqDecimal(int a, int b, uint decimals, string memory err) internal { + if (a != b) { + emit log_named_string("Error", err); + assertEqDecimal(a, b, decimals); + } + } + function assertEqDecimal(uint a, uint b, uint decimals) internal { + if (a != b) { + emit log("Error: a == b not satisfied [decimal uint]"); + emit log_named_decimal_uint(" Expected", b, decimals); + emit log_named_decimal_uint(" Actual", a, decimals); + fail(); + } + } + function assertEqDecimal(uint a, uint b, uint decimals, string memory err) internal { + if (a != b) { + emit log_named_string("Error", err); + assertEqDecimal(a, b, decimals); + } + } + + function assertGt(uint a, uint b) internal { + if (a <= b) { + emit log("Error: a > b not satisfied [uint]"); + emit log_named_uint(" Value a", a); + emit log_named_uint(" Value b", b); + fail(); + } + } + function assertGt(uint a, uint b, string memory err) internal { + if (a <= b) { + emit log_named_string("Error", err); + assertGt(a, b); + } + } + function assertGt(int a, int b) internal { + if (a <= b) { + emit log("Error: a > b not satisfied [int]"); + emit log_named_int(" Value a", a); + emit log_named_int(" Value b", b); + fail(); + } + } + function assertGt(int a, int b, string memory err) internal { + if (a <= b) { + emit log_named_string("Error", err); + assertGt(a, b); + } + } + function assertGtDecimal(int a, int b, uint decimals) internal { + if (a <= b) { + emit log("Error: a > b not satisfied [decimal int]"); + emit log_named_decimal_int(" Value a", a, decimals); + emit log_named_decimal_int(" Value b", b, decimals); + fail(); + } + } + function assertGtDecimal(int a, int b, uint decimals, string memory err) internal { + if (a <= b) { + emit log_named_string("Error", err); + assertGtDecimal(a, b, decimals); + } + } + function assertGtDecimal(uint a, uint b, uint decimals) internal { + if (a <= b) { + emit log("Error: a > b not satisfied [decimal uint]"); + emit log_named_decimal_uint(" Value a", a, decimals); + emit log_named_decimal_uint(" Value b", b, decimals); + fail(); + } + } + function assertGtDecimal(uint a, uint b, uint decimals, string memory err) internal { + if (a <= b) { + emit log_named_string("Error", err); + assertGtDecimal(a, b, decimals); + } + } + + function assertGe(uint a, uint b) internal { + if (a < b) { + emit log("Error: a >= b not satisfied [uint]"); + emit log_named_uint(" Value a", a); + emit log_named_uint(" Value b", b); + fail(); + } + } + function assertGe(uint a, uint b, string memory err) internal { + if (a < b) { + emit log_named_string("Error", err); + assertGe(a, b); + } + } + function assertGe(int a, int b) internal { + if (a < b) { + emit log("Error: a >= b not satisfied [int]"); + emit log_named_int(" Value a", a); + emit log_named_int(" Value b", b); + fail(); + } + } + function assertGe(int a, int b, string memory err) internal { + if (a < b) { + emit log_named_string("Error", err); + assertGe(a, b); + } + } + function assertGeDecimal(int a, int b, uint decimals) internal { + if (a < b) { + emit log("Error: a >= b not satisfied [decimal int]"); + emit log_named_decimal_int(" Value a", a, decimals); + emit log_named_decimal_int(" Value b", b, decimals); + fail(); + } + } + function assertGeDecimal(int a, int b, uint decimals, string memory err) internal { + if (a < b) { + emit log_named_string("Error", err); + assertGeDecimal(a, b, decimals); + } + } + function assertGeDecimal(uint a, uint b, uint decimals) internal { + if (a < b) { + emit log("Error: a >= b not satisfied [decimal uint]"); + emit log_named_decimal_uint(" Value a", a, decimals); + emit log_named_decimal_uint(" Value b", b, decimals); + fail(); + } + } + function assertGeDecimal(uint a, uint b, uint decimals, string memory err) internal { + if (a < b) { + emit log_named_string("Error", err); + assertGeDecimal(a, b, decimals); + } + } + + function assertLt(uint a, uint b) internal { + if (a >= b) { + emit log("Error: a < b not satisfied [uint]"); + emit log_named_uint(" Value a", a); + emit log_named_uint(" Value b", b); + fail(); + } + } + function assertLt(uint a, uint b, string memory err) internal { + if (a >= b) { + emit log_named_string("Error", err); + assertLt(a, b); + } + } + function assertLt(int a, int b) internal { + if (a >= b) { + emit log("Error: a < b not satisfied [int]"); + emit log_named_int(" Value a", a); + emit log_named_int(" Value b", b); + fail(); + } + } + function assertLt(int a, int b, string memory err) internal { + if (a >= b) { + emit log_named_string("Error", err); + assertLt(a, b); + } + } + function assertLtDecimal(int a, int b, uint decimals) internal { + if (a >= b) { + emit log("Error: a < b not satisfied [decimal int]"); + emit log_named_decimal_int(" Value a", a, decimals); + emit log_named_decimal_int(" Value b", b, decimals); + fail(); + } + } + function assertLtDecimal(int a, int b, uint decimals, string memory err) internal { + if (a >= b) { + emit log_named_string("Error", err); + assertLtDecimal(a, b, decimals); + } + } + function assertLtDecimal(uint a, uint b, uint decimals) internal { + if (a >= b) { + emit log("Error: a < b not satisfied [decimal uint]"); + emit log_named_decimal_uint(" Value a", a, decimals); + emit log_named_decimal_uint(" Value b", b, decimals); + fail(); + } + } + function assertLtDecimal(uint a, uint b, uint decimals, string memory err) internal { + if (a >= b) { + emit log_named_string("Error", err); + assertLtDecimal(a, b, decimals); + } + } + + function assertLe(uint a, uint b) internal { + if (a > b) { + emit log("Error: a <= b not satisfied [uint]"); + emit log_named_uint(" Value a", a); + emit log_named_uint(" Value b", b); + fail(); + } + } + function assertLe(uint a, uint b, string memory err) internal { + if (a > b) { + emit log_named_string("Error", err); + assertLe(a, b); + } + } + function assertLe(int a, int b) internal { + if (a > b) { + emit log("Error: a <= b not satisfied [int]"); + emit log_named_int(" Value a", a); + emit log_named_int(" Value b", b); + fail(); + } + } + function assertLe(int a, int b, string memory err) internal { + if (a > b) { + emit log_named_string("Error", err); + assertLe(a, b); + } + } + function assertLeDecimal(int a, int b, uint decimals) internal { + if (a > b) { + emit log("Error: a <= b not satisfied [decimal int]"); + emit log_named_decimal_int(" Value a", a, decimals); + emit log_named_decimal_int(" Value b", b, decimals); + fail(); + } + } + function assertLeDecimal(int a, int b, uint decimals, string memory err) internal { + if (a > b) { + emit log_named_string("Error", err); + assertLeDecimal(a, b, decimals); + } + } + function assertLeDecimal(uint a, uint b, uint decimals) internal { + if (a > b) { + emit log("Error: a <= b not satisfied [decimal uint]"); + emit log_named_decimal_uint(" Value a", a, decimals); + emit log_named_decimal_uint(" Value b", b, decimals); + fail(); + } + } + function assertLeDecimal(uint a, uint b, uint decimals, string memory err) internal { + if (a > b) { + emit log_named_string("Error", err); + assertGeDecimal(a, b, decimals); + } + } + + function assertEq(string memory a, string memory b) internal { + if (keccak256(abi.encodePacked(a)) != keccak256(abi.encodePacked(b))) { + emit log("Error: a == b not satisfied [string]"); + emit log_named_string(" Expected", b); + emit log_named_string(" Actual", a); + fail(); + } + } + function assertEq(string memory a, string memory b, string memory err) internal { + if (keccak256(abi.encodePacked(a)) != keccak256(abi.encodePacked(b))) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + + function checkEq0(bytes memory a, bytes memory b) internal pure returns (bool ok) { + ok = true; + if (a.length == b.length) { + for (uint i = 0; i < a.length; i++) { + if (a[i] != b[i]) { + ok = false; + } + } + } else { + ok = false; + } + } + function assertEq0(bytes memory a, bytes memory b) internal { + if (!checkEq0(a, b)) { + emit log("Error: a == b not satisfied [bytes]"); + emit log_named_bytes(" Expected", b); + emit log_named_bytes(" Actual", a); + fail(); + } + } + function assertEq0(bytes memory a, bytes memory b, string memory err) internal { + if (!checkEq0(a, b)) { + emit log_named_string("Error", err); + assertEq0(a, b); + } + } +} diff --git a/getting-started/foundry/lib/forge-std/src/Script.sol b/getting-started/foundry/lib/forge-std/src/Script.sol new file mode 100644 index 00000000..d7567618 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/Script.sol @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.6.0 <0.9.0; + +import "./Vm.sol"; +import "./console.sol"; +import "./console2.sol"; + +abstract contract Script { + bool public IS_SCRIPT = true; + address constant private VM_ADDRESS = + address(bytes20(uint160(uint256(keccak256('hevm cheat code'))))); + + Vm public constant vm = Vm(VM_ADDRESS); +} diff --git a/getting-started/foundry/lib/forge-std/src/Test.sol b/getting-started/foundry/lib/forge-std/src/Test.sol new file mode 100644 index 00000000..eb181da1 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/Test.sol @@ -0,0 +1,733 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.6.0 <0.9.0; + +import "./Script.sol"; +import "ds-test/test.sol"; + +// Wrappers around Cheatcodes to avoid footguns +abstract contract Test is DSTest, Script { + using stdStorage for StdStorage; + + uint256 internal constant UINT256_MAX = + 115792089237316195423570985008687907853269984665640564039457584007913129639935; + + StdStorage internal stdstore; + + /*////////////////////////////////////////////////////////////////////////// + STD-LOGS + //////////////////////////////////////////////////////////////////////////*/ + + event log_array(uint256[] val); + event log_array(int256[] val); + event log_array(address[] val); + event log_named_array(string key, uint256[] val); + event log_named_array(string key, int256[] val); + event log_named_array(string key, address[] val); + + /*////////////////////////////////////////////////////////////////////////// + STD-CHEATS + //////////////////////////////////////////////////////////////////////////*/ + + // Skip forward or rewind time by the specified number of seconds + function skip(uint256 time) public { + vm.warp(block.timestamp + time); + } + + function rewind(uint256 time) public { + vm.warp(block.timestamp - time); + } + + // Setup a prank from an address that has some ether + function hoax(address who) public { + vm.deal(who, 1 << 128); + vm.prank(who); + } + + function hoax(address who, uint256 give) public { + vm.deal(who, give); + vm.prank(who); + } + + function hoax(address who, address origin) public { + vm.deal(who, 1 << 128); + vm.prank(who, origin); + } + + function hoax(address who, address origin, uint256 give) public { + vm.deal(who, give); + vm.prank(who, origin); + } + + // Start perpetual prank from an address that has some ether + function startHoax(address who) public { + vm.deal(who, 1 << 128); + vm.startPrank(who); + } + + function startHoax(address who, uint256 give) public { + vm.deal(who, give); + vm.startPrank(who); + } + + // Start perpetual prank from an address that has some ether + // tx.origin is set to the origin parameter + function startHoax(address who, address origin) public { + vm.deal(who, 1 << 128); + vm.startPrank(who, origin); + } + + function startHoax(address who, address origin, uint256 give) public { + vm.deal(who, give); + vm.startPrank(who, origin); + } + + function changePrank(address who) internal { + vm.stopPrank(); + vm.startPrank(who); + } + + // DEPRECATED: Use `deal` instead + function tip(address token, address to, uint256 give) public { + emit log_named_string("WARNING", "Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead."); + stdstore + .target(token) + .sig(0x70a08231) + .with_key(to) + .checked_write(give); + } + + // The same as Vm's `deal` + // Use the alternative signature for ERC20 tokens + function deal(address to, uint256 give) public { + vm.deal(to, give); + } + + // Set the balance of an account for any ERC20 token + // Use the alternative signature to update `totalSupply` + function deal(address token, address to, uint256 give) public { + deal(token, to, give, false); + } + + function deal(address token, address to, uint256 give, bool adjust) public { + // get current balance + (, bytes memory balData) = token.call(abi.encodeWithSelector(0x70a08231, to)); + uint256 prevBal = abi.decode(balData, (uint256)); + + // update balance + stdstore + .target(token) + .sig(0x70a08231) + .with_key(to) + .checked_write(give); + + // update total supply + if(adjust){ + (, bytes memory totSupData) = token.call(abi.encodeWithSelector(0x18160ddd)); + uint256 totSup = abi.decode(totSupData, (uint256)); + if(give < prevBal) { + totSup -= (prevBal - give); + } else { + totSup += (give - prevBal); + } + stdstore + .target(token) + .sig(0x18160ddd) + .checked_write(totSup); + } + } + + function bound(uint256 x, uint256 min, uint256 max) internal virtual returns (uint256 result) { + require(min <= max, "Test bound(uint256,uint256,uint256): Max is less than min."); + + uint256 size = max - min; + + if (size == 0) + { + result = min; + } + else if (size == UINT256_MAX) + { + result = x; + } + else + { + ++size; // make `max` inclusive + uint256 mod = x % size; + result = min + mod; + } + + emit log_named_uint("Bound Result", result); + } + + // Deploy a contract by fetching the contract bytecode from + // the artifacts directory + // e.g. `deployCode(code, abi.encode(arg1,arg2,arg3))` + function deployCode(string memory what, bytes memory args) + public + returns (address addr) + { + bytes memory bytecode = abi.encodePacked(vm.getCode(what), args); + /// @solidity memory-safe-assembly + assembly { + addr := create(0, add(bytecode, 0x20), mload(bytecode)) + } + + require( + addr != address(0), + "Test deployCode(string,bytes): Deployment failed." + ); + } + + function deployCode(string memory what) + public + returns (address addr) + { + bytes memory bytecode = vm.getCode(what); + /// @solidity memory-safe-assembly + assembly { + addr := create(0, add(bytecode, 0x20), mload(bytecode)) + } + + require( + addr != address(0), + "Test deployCode(string): Deployment failed." + ); + } + + /*////////////////////////////////////////////////////////////////////////// + STD-ASSERTIONS + //////////////////////////////////////////////////////////////////////////*/ + + function fail(string memory err) internal virtual { + emit log_named_string("Error", err); + fail(); + } + + function assertFalse(bool data) internal virtual { + assertTrue(!data); + } + + function assertFalse(bool data, string memory err) internal virtual { + assertTrue(!data, err); + } + + function assertEq(bool a, bool b) internal { + if (a != b) { + emit log ("Error: a == b not satisfied [bool]"); + emit log_named_string (" Expected", b ? "true" : "false"); + emit log_named_string (" Actual", a ? "true" : "false"); + fail(); + } + } + + function assertEq(bool a, bool b, string memory err) internal { + if (a != b) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + + function assertEq(bytes memory a, bytes memory b) internal { + assertEq0(a, b); + } + + function assertEq(bytes memory a, bytes memory b, string memory err) internal { + assertEq0(a, b, err); + } + + function assertEq(uint256[] memory a, uint256[] memory b) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log("Error: a == b not satisfied [uint[]]"); + emit log_named_array(" Expected", b); + emit log_named_array(" Actual", a); + fail(); + } + } + + function assertEq(int256[] memory a, int256[] memory b) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log("Error: a == b not satisfied [int[]]"); + emit log_named_array(" Expected", b); + emit log_named_array(" Actual", a); + fail(); + } + } + + function assertEq(address[] memory a, address[] memory b) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log("Error: a == b not satisfied [address[]]"); + emit log_named_array(" Expected", b); + emit log_named_array(" Actual", a); + fail(); + } + } + + function assertEq(uint256[] memory a, uint256[] memory b, string memory err) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + + function assertEq(int256[] memory a, int256[] memory b, string memory err) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + + + function assertEq(address[] memory a, address[] memory b, string memory err) internal { + if (keccak256(abi.encode(a)) != keccak256(abi.encode(b))) { + emit log_named_string("Error", err); + assertEq(a, b); + } + } + + function assertApproxEqAbs( + uint256 a, + uint256 b, + uint256 maxDelta + ) internal virtual { + uint256 delta = stdMath.delta(a, b); + + if (delta > maxDelta) { + emit log ("Error: a ~= b not satisfied [uint]"); + emit log_named_uint (" Expected", b); + emit log_named_uint (" Actual", a); + emit log_named_uint (" Max Delta", maxDelta); + emit log_named_uint (" Delta", delta); + fail(); + } + } + + function assertApproxEqAbs( + uint256 a, + uint256 b, + uint256 maxDelta, + string memory err + ) internal virtual { + uint256 delta = stdMath.delta(a, b); + + if (delta > maxDelta) { + emit log_named_string ("Error", err); + assertApproxEqAbs(a, b, maxDelta); + } + } + + function assertApproxEqAbs( + int256 a, + int256 b, + uint256 maxDelta + ) internal virtual { + uint256 delta = stdMath.delta(a, b); + + if (delta > maxDelta) { + emit log ("Error: a ~= b not satisfied [int]"); + emit log_named_int (" Expected", b); + emit log_named_int (" Actual", a); + emit log_named_uint (" Max Delta", maxDelta); + emit log_named_uint (" Delta", delta); + fail(); + } + } + + function assertApproxEqAbs( + int256 a, + int256 b, + uint256 maxDelta, + string memory err + ) internal virtual { + uint256 delta = stdMath.delta(a, b); + + if (delta > maxDelta) { + emit log_named_string ("Error", err); + assertApproxEqAbs(a, b, maxDelta); + } + } + + function assertApproxEqRel( + uint256 a, + uint256 b, + uint256 maxPercentDelta // An 18 decimal fixed point number, where 1e18 == 100% + ) internal virtual { + if (b == 0) return assertEq(a, b); // If the expected is 0, actual must be too. + + uint256 percentDelta = stdMath.percentDelta(a, b); + + if (percentDelta > maxPercentDelta) { + emit log ("Error: a ~= b not satisfied [uint]"); + emit log_named_uint (" Expected", b); + emit log_named_uint (" Actual", a); + emit log_named_decimal_uint (" Max % Delta", maxPercentDelta, 18); + emit log_named_decimal_uint (" % Delta", percentDelta, 18); + fail(); + } + } + + function assertApproxEqRel( + uint256 a, + uint256 b, + uint256 maxPercentDelta, // An 18 decimal fixed point number, where 1e18 == 100% + string memory err + ) internal virtual { + if (b == 0) return assertEq(a, b); // If the expected is 0, actual must be too. + + uint256 percentDelta = stdMath.percentDelta(a, b); + + if (percentDelta > maxPercentDelta) { + emit log_named_string ("Error", err); + assertApproxEqRel(a, b, maxPercentDelta); + } + } + + function assertApproxEqRel( + int256 a, + int256 b, + uint256 maxPercentDelta + ) internal virtual { + if (b == 0) return assertEq(a, b); // If the expected is 0, actual must be too. + + uint256 percentDelta = stdMath.percentDelta(a, b); + + if (percentDelta > maxPercentDelta) { + emit log ("Error: a ~= b not satisfied [int]"); + emit log_named_int (" Expected", b); + emit log_named_int (" Actual", a); + emit log_named_decimal_uint(" Max % Delta", maxPercentDelta, 18); + emit log_named_decimal_uint(" % Delta", percentDelta, 18); + fail(); + } + } + + function assertApproxEqRel( + int256 a, + int256 b, + uint256 maxPercentDelta, + string memory err + ) internal virtual { + if (b == 0) return assertEq(a, b); // If the expected is 0, actual must be too. + + uint256 percentDelta = stdMath.percentDelta(a, b); + + if (percentDelta > maxPercentDelta) { + emit log_named_string ("Error", err); + assertApproxEqRel(a, b, maxPercentDelta); + } + } +} + +/*////////////////////////////////////////////////////////////////////////// + STD-ERRORS +//////////////////////////////////////////////////////////////////////////*/ + +library stdError { + bytes public constant assertionError = abi.encodeWithSignature("Panic(uint256)", 0x01); + bytes public constant arithmeticError = abi.encodeWithSignature("Panic(uint256)", 0x11); + bytes public constant divisionError = abi.encodeWithSignature("Panic(uint256)", 0x12); + bytes public constant enumConversionError = abi.encodeWithSignature("Panic(uint256)", 0x21); + bytes public constant encodeStorageError = abi.encodeWithSignature("Panic(uint256)", 0x22); + bytes public constant popError = abi.encodeWithSignature("Panic(uint256)", 0x31); + bytes public constant indexOOBError = abi.encodeWithSignature("Panic(uint256)", 0x32); + bytes public constant memOverflowError = abi.encodeWithSignature("Panic(uint256)", 0x41); + bytes public constant zeroVarError = abi.encodeWithSignature("Panic(uint256)", 0x51); + // DEPRECATED: Use Vm's `expectRevert` without any arguments instead + bytes public constant lowLevelError = bytes(""); // `0x` +} + +/*////////////////////////////////////////////////////////////////////////// + STD-STORAGE +//////////////////////////////////////////////////////////////////////////*/ + +struct StdStorage { + mapping (address => mapping(bytes4 => mapping(bytes32 => uint256))) slots; + mapping (address => mapping(bytes4 => mapping(bytes32 => bool))) finds; + + bytes32[] _keys; + bytes4 _sig; + uint256 _depth; + address _target; + bytes32 _set; +} + +library stdStorage { + event SlotFound(address who, bytes4 fsig, bytes32 keysHash, uint slot); + event WARNING_UninitedSlot(address who, uint slot); + + uint256 private constant UINT256_MAX = 115792089237316195423570985008687907853269984665640564039457584007913129639935; + int256 private constant INT256_MAX = 57896044618658097711785492504343953926634992332820282019728792003956564819967; + + Vm private constant vm_std_store = Vm(address(uint160(uint256(keccak256('hevm cheat code'))))); + + function sigs( + string memory sigStr + ) + internal + pure + returns (bytes4) + { + return bytes4(keccak256(bytes(sigStr))); + } + + /// @notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against + // slot complexity: + // if flat, will be bytes32(uint256(uint)); + // if map, will be keccak256(abi.encode(key, uint(slot))); + // if deep map, will be keccak256(abi.encode(key1, keccak256(abi.encode(key0, uint(slot))))); + // if map struct, will be bytes32(uint256(keccak256(abi.encode(key1, keccak256(abi.encode(key0, uint(slot)))))) + structFieldDepth); + function find( + StdStorage storage self + ) + internal + returns (uint256) + { + address who = self._target; + bytes4 fsig = self._sig; + uint256 field_depth = self._depth; + bytes32[] memory ins = self._keys; + + // calldata to test against + if (self.finds[who][fsig][keccak256(abi.encodePacked(ins, field_depth))]) { + return self.slots[who][fsig][keccak256(abi.encodePacked(ins, field_depth))]; + } + bytes memory cald = abi.encodePacked(fsig, flatten(ins)); + vm_std_store.record(); + bytes32 fdat; + { + (, bytes memory rdat) = who.staticcall(cald); + fdat = bytesToBytes32(rdat, 32*field_depth); + } + + (bytes32[] memory reads, ) = vm_std_store.accesses(address(who)); + if (reads.length == 1) { + bytes32 curr = vm_std_store.load(who, reads[0]); + if (curr == bytes32(0)) { + emit WARNING_UninitedSlot(who, uint256(reads[0])); + } + if (fdat != curr) { + require(false, "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported."); + } + emit SlotFound(who, fsig, keccak256(abi.encodePacked(ins, field_depth)), uint256(reads[0])); + self.slots[who][fsig][keccak256(abi.encodePacked(ins, field_depth))] = uint256(reads[0]); + self.finds[who][fsig][keccak256(abi.encodePacked(ins, field_depth))] = true; + } else if (reads.length > 1) { + for (uint256 i = 0; i < reads.length; i++) { + bytes32 prev = vm_std_store.load(who, reads[i]); + if (prev == bytes32(0)) { + emit WARNING_UninitedSlot(who, uint256(reads[i])); + } + // store + vm_std_store.store(who, reads[i], bytes32(hex"1337")); + bool success; + bytes memory rdat; + { + (success, rdat) = who.staticcall(cald); + fdat = bytesToBytes32(rdat, 32*field_depth); + } + + if (success && fdat == bytes32(hex"1337")) { + // we found which of the slots is the actual one + emit SlotFound(who, fsig, keccak256(abi.encodePacked(ins, field_depth)), uint256(reads[i])); + self.slots[who][fsig][keccak256(abi.encodePacked(ins, field_depth))] = uint256(reads[i]); + self.finds[who][fsig][keccak256(abi.encodePacked(ins, field_depth))] = true; + vm_std_store.store(who, reads[i], prev); + break; + } + vm_std_store.store(who, reads[i], prev); + } + } else { + require(false, "stdStorage find(StdStorage): No storage use detected for target."); + } + + require(self.finds[who][fsig][keccak256(abi.encodePacked(ins, field_depth))], "stdStorage find(StdStorage): Slot(s) not found."); + + delete self._target; + delete self._sig; + delete self._keys; + delete self._depth; + + return self.slots[who][fsig][keccak256(abi.encodePacked(ins, field_depth))]; + } + + function target(StdStorage storage self, address _target) internal returns (StdStorage storage) { + self._target = _target; + return self; + } + + function sig(StdStorage storage self, bytes4 _sig) internal returns (StdStorage storage) { + self._sig = _sig; + return self; + } + + function sig(StdStorage storage self, string memory _sig) internal returns (StdStorage storage) { + self._sig = sigs(_sig); + return self; + } + + function with_key(StdStorage storage self, address who) internal returns (StdStorage storage) { + self._keys.push(bytes32(uint256(uint160(who)))); + return self; + } + + function with_key(StdStorage storage self, uint256 amt) internal returns (StdStorage storage) { + self._keys.push(bytes32(amt)); + return self; + } + function with_key(StdStorage storage self, bytes32 key) internal returns (StdStorage storage) { + self._keys.push(key); + return self; + } + + function depth(StdStorage storage self, uint256 _depth) internal returns (StdStorage storage) { + self._depth = _depth; + return self; + } + + function checked_write(StdStorage storage self, address who) internal { + checked_write(self, bytes32(uint256(uint160(who)))); + } + + function checked_write(StdStorage storage self, uint256 amt) internal { + checked_write(self, bytes32(amt)); + } + + function checked_write(StdStorage storage self, bool write) internal { + bytes32 t; + /// @solidity memory-safe-assembly + assembly { + t := write + } + checked_write(self, t); + } + + function checked_write( + StdStorage storage self, + bytes32 set + ) internal { + address who = self._target; + bytes4 fsig = self._sig; + uint256 field_depth = self._depth; + bytes32[] memory ins = self._keys; + + bytes memory cald = abi.encodePacked(fsig, flatten(ins)); + if (!self.finds[who][fsig][keccak256(abi.encodePacked(ins, field_depth))]) { + find(self); + } + bytes32 slot = bytes32(self.slots[who][fsig][keccak256(abi.encodePacked(ins, field_depth))]); + + bytes32 fdat; + { + (, bytes memory rdat) = who.staticcall(cald); + fdat = bytesToBytes32(rdat, 32*field_depth); + } + bytes32 curr = vm_std_store.load(who, slot); + + if (fdat != curr) { + require(false, "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported."); + } + vm_std_store.store(who, slot, set); + delete self._target; + delete self._sig; + delete self._keys; + delete self._depth; + } + + function read(StdStorage storage self) private returns (bytes memory) { + address t = self._target; + uint256 s = find(self); + return abi.encode(vm_std_store.load(t, bytes32(s))); + } + + function read_bytes32(StdStorage storage self) internal returns (bytes32) { + return abi.decode(read(self), (bytes32)); + } + + + function read_bool(StdStorage storage self) internal returns (bool) { + int256 v = read_int(self); + if (v == 0) return false; + if (v == 1) return true; + revert("stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool."); + } + + function read_address(StdStorage storage self) internal returns (address) { + return abi.decode(read(self), (address)); + } + + function read_uint(StdStorage storage self) internal returns (uint256) { + return abi.decode(read(self), (uint256)); + } + + function read_int(StdStorage storage self) internal returns (int256) { + return abi.decode(read(self), (int256)); + } + + function bytesToBytes32(bytes memory b, uint offset) public pure returns (bytes32) { + bytes32 out; + + uint256 max = b.length > 32 ? 32 : b.length; + for (uint i = 0; i < max; i++) { + out |= bytes32(b[offset + i] & 0xFF) >> (i * 8); + } + return out; + } + + function flatten(bytes32[] memory b) private pure returns (bytes memory) + { + bytes memory result = new bytes(b.length * 32); + for (uint256 i = 0; i < b.length; i++) { + bytes32 k = b[i]; + /// @solidity memory-safe-assembly + assembly { + mstore(add(result, add(32, mul(32, i))), k) + } + } + + return result; + } +} + +/*////////////////////////////////////////////////////////////////////////// + STD-MATH +//////////////////////////////////////////////////////////////////////////*/ + +library stdMath { + int256 private constant INT256_MIN = -57896044618658097711785492504343953926634992332820282019728792003956564819968; + + function abs(int256 a) internal pure returns (uint256) { + // Required or it will fail when `a = type(int256).min` + if (a == INT256_MIN) + return 57896044618658097711785492504343953926634992332820282019728792003956564819968; + + return uint256(a >= 0 ? a : -a); + } + + function delta(uint256 a, uint256 b) internal pure returns (uint256) { + return a > b + ? a - b + : b - a; + } + + function delta(int256 a, int256 b) internal pure returns (uint256) { + // a and b are of the same sign + if (a >= 0 && b >= 0 || a < 0 && b < 0) { + return delta(abs(a), abs(b)); + } + + // a and b are of opposite signs + return abs(a) + abs(b); + } + + function percentDelta(uint256 a, uint256 b) internal pure returns (uint256) { + uint256 absDelta = delta(a, b); + + return absDelta * 1e18 / b; + } + + function percentDelta(int256 a, int256 b) internal pure returns (uint256) { + uint256 absDelta = delta(a, b); + uint256 absB = abs(b); + + return absDelta * 1e18 / absB; + } +} diff --git a/getting-started/foundry/lib/forge-std/src/Vm.sol b/getting-started/foundry/lib/forge-std/src/Vm.sol new file mode 100644 index 00000000..1f7e641c --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/Vm.sol @@ -0,0 +1,141 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.6.0; +pragma experimental ABIEncoderV2; + +interface Vm { + struct Log { + bytes32[] topics; + bytes data; + } + + // Sets block.timestamp (newTimestamp) + function warp(uint256) external; + // Sets block.height (newHeight) + function roll(uint256) external; + // Sets block.basefee (newBasefee) + function fee(uint256) external; + // Sets block.chainid + function chainId(uint256) external; + // Loads a storage slot from an address (who, slot) + function load(address,bytes32) external returns (bytes32); + // Stores a value to an address' storage slot, (who, slot, value) + function store(address,bytes32,bytes32) external; + // Signs data, (privateKey, digest) => (v, r, s) + function sign(uint256,bytes32) external returns (uint8,bytes32,bytes32); + // Gets the address for a given private key, (privateKey) => (address) + function addr(uint256) external returns (address); + // Gets the nonce of an account + function getNonce(address) external returns (uint64); + // Sets the nonce of an account; must be higher than the current nonce of the account + function setNonce(address, uint64) external; + // Performs a foreign function call via the terminal, (stringInputs) => (result) + function ffi(string[] calldata) external returns (bytes memory); + // Sets environment variables, (name, value) + function setEnv(string calldata, string calldata) external; + // Reads environment variables, (name) => (value) + function envBool(string calldata) external returns (bool); + function envUint(string calldata) external returns (uint256); + function envInt(string calldata) external returns (int256); + function envAddress(string calldata) external returns (address); + function envBytes32(string calldata) external returns (bytes32); + function envString(string calldata) external returns (string memory); + function envBytes(string calldata) external returns (bytes memory); + // Reads environment variables as arrays, (name, delim) => (value[]) + function envBool(string calldata, string calldata) external returns (bool[] memory); + function envUint(string calldata, string calldata) external returns (uint256[] memory); + function envInt(string calldata, string calldata) external returns (int256[] memory); + function envAddress(string calldata, string calldata) external returns (address[] memory); + function envBytes32(string calldata, string calldata) external returns (bytes32[] memory); + function envString(string calldata, string calldata) external returns (string[] memory); + function envBytes(string calldata, string calldata) external returns (bytes[] memory); + // Sets the *next* call's msg.sender to be the input address + function prank(address) external; + // Sets all subsequent calls' msg.sender to be the input address until `stopPrank` is called + function startPrank(address) external; + // Sets the *next* call's msg.sender to be the input address, and the tx.origin to be the second input + function prank(address,address) external; + // Sets all subsequent calls' msg.sender to be the input address until `stopPrank` is called, and the tx.origin to be the second input + function startPrank(address,address) external; + // Resets subsequent calls' msg.sender to be `address(this)` + function stopPrank() external; + // Sets an address' balance, (who, newBalance) + function deal(address, uint256) external; + // Sets an address' code, (who, newCode) + function etch(address, bytes calldata) external; + // Expects an error on next call + function expectRevert(bytes calldata) external; + function expectRevert(bytes4) external; + function expectRevert() external; + // Records all storage reads and writes + function record() external; + // Gets all accessed reads and write slot from a recording session, for a given address + function accesses(address) external returns (bytes32[] memory reads, bytes32[] memory writes); + // Prepare an expected log with (bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData). + // Call this function, then emit an event, then call a function. Internally after the call, we check if + // logs were emitted in the expected order with the expected topics and data (as specified by the booleans) + function expectEmit(bool,bool,bool,bool) external; + function expectEmit(bool,bool,bool,bool,address) external; + // Mocks a call to an address, returning specified data. + // Calldata can either be strict or a partial match, e.g. if you only + // pass a Solidity selector to the expected calldata, then the entire Solidity + // function will be mocked. + function mockCall(address,bytes calldata,bytes calldata) external; + // Mocks a call to an address with a specific msg.value, returning specified data. + // Calldata match takes precedence over msg.value in case of ambiguity. + function mockCall(address,uint256,bytes calldata,bytes calldata) external; + // Clears all mocked calls + function clearMockedCalls() external; + // Expects a call to an address with the specified calldata. + // Calldata can either be a strict or a partial match + function expectCall(address,bytes calldata) external; + // Expects a call to an address with the specified msg.value and calldata + function expectCall(address,uint256,bytes calldata) external; + // Gets the code from an artifact file. Takes in the relative path to the json file + function getCode(string calldata) external returns (bytes memory); + // Labels an address in call traces + function label(address, string calldata) external; + // If the condition is false, discard this run's fuzz inputs and generate new ones + function assume(bool) external; + // Sets block.coinbase (who) + function coinbase(address) external; + // Using the address that calls the test contract, has the next call (at this call depth only) create a transaction that can later be signed and sent onchain + function broadcast() external; + // Has the next call (at this call depth only) create a transaction with the address provided as the sender that can later be signed and sent onchain + function broadcast(address) external; + // Using the address that calls the test contract, has all subsequent calls (at this call depth only) create transactions that can later be signed and sent onchain + function startBroadcast() external; + // Has all subsequent calls (at this call depth only) create transactions that can later be signed and sent onchain + function startBroadcast(address) external; + // Stops collecting onchain transactions + function stopBroadcast() external; + // Reads the entire content of file to string, (path) => (data) + function readFile(string calldata) external returns (string memory); + // Reads next line of file to string, (path) => (line) + function readLine(string calldata) external returns (string memory); + // Writes data to file, creating a file if it does not exist, and entirely replacing its contents if it does. + // (path, data) => () + function writeFile(string calldata, string calldata) external; + // Writes line to file, creating a file if it does not exist. + // (path, data) => () + function writeLine(string calldata, string calldata) external; + // Closes file for reading, resetting the offset and allowing to read it from beginning with readLine. + // (path) => () + function closeFile(string calldata) external; + // Removes file. This cheatcode will revert in the following situations, but is not limited to just these cases: + // - Path points to a directory. + // - The file doesn't exist. + // - The user lacks permissions to remove the file. + // (path) => () + function removeFile(string calldata) external; + // Convert values to a string, (value) => (stringified value) + function toString(address) external returns(string memory); + function toString(bytes calldata) external returns(string memory); + function toString(bytes32) external returns(string memory); + function toString(bool) external returns(string memory); + function toString(uint256) external returns(string memory); + function toString(int256) external returns(string memory); + // Record all the transaction logs + function recordLogs() external; + // Gets all the recorded logs, () => (logs) + function getRecordedLogs() external returns (Log[] memory); +} diff --git a/getting-started/foundry/lib/forge-std/src/console.sol b/getting-started/foundry/lib/forge-std/src/console.sol new file mode 100644 index 00000000..ad57e536 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/console.sol @@ -0,0 +1,1533 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.4.22 <0.9.0; + +library console { + address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67); + + function _sendLogPayload(bytes memory payload) private view { + uint256 payloadLength = payload.length; + address consoleAddress = CONSOLE_ADDRESS; + /// @solidity memory-safe-assembly + assembly { + let payloadStart := add(payload, 32) + let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0) + } + } + + function log() internal view { + _sendLogPayload(abi.encodeWithSignature("log()")); + } + + function logInt(int p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(int)", p0)); + } + + function logUint(uint p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); + } + + function logString(string memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); + } + + function logBool(bool p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); + } + + function logAddress(address p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); + } + + function logBytes(bytes memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); + } + + function logBytes1(bytes1 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); + } + + function logBytes2(bytes2 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); + } + + function logBytes3(bytes3 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); + } + + function logBytes4(bytes4 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); + } + + function logBytes5(bytes5 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); + } + + function logBytes6(bytes6 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); + } + + function logBytes7(bytes7 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); + } + + function logBytes8(bytes8 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); + } + + function logBytes9(bytes9 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); + } + + function logBytes10(bytes10 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); + } + + function logBytes11(bytes11 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); + } + + function logBytes12(bytes12 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); + } + + function logBytes13(bytes13 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); + } + + function logBytes14(bytes14 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); + } + + function logBytes15(bytes15 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); + } + + function logBytes16(bytes16 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); + } + + function logBytes17(bytes17 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); + } + + function logBytes18(bytes18 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); + } + + function logBytes19(bytes19 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); + } + + function logBytes20(bytes20 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); + } + + function logBytes21(bytes21 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); + } + + function logBytes22(bytes22 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); + } + + function logBytes23(bytes23 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); + } + + function logBytes24(bytes24 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); + } + + function logBytes25(bytes25 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); + } + + function logBytes26(bytes26 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); + } + + function logBytes27(bytes27 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); + } + + function logBytes28(bytes28 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); + } + + function logBytes29(bytes29 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); + } + + function logBytes30(bytes30 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); + } + + function logBytes31(bytes31 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); + } + + function logBytes32(bytes32 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); + } + + function log(uint p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); + } + + function log(string memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); + } + + function log(bool p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); + } + + function log(address p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); + } + + function log(uint p0, uint p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint)", p0, p1)); + } + + function log(uint p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string)", p0, p1)); + } + + function log(uint p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool)", p0, p1)); + } + + function log(uint p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address)", p0, p1)); + } + + function log(string memory p0, uint p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint)", p0, p1)); + } + + function log(string memory p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); + } + + function log(string memory p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); + } + + function log(string memory p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); + } + + function log(bool p0, uint p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint)", p0, p1)); + } + + function log(bool p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); + } + + function log(bool p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); + } + + function log(bool p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); + } + + function log(address p0, uint p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint)", p0, p1)); + } + + function log(address p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); + } + + function log(address p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); + } + + function log(address p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address)", p0, p1)); + } + + function log(uint p0, uint p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint)", p0, p1, p2)); + } + + function log(uint p0, uint p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string)", p0, p1, p2)); + } + + function log(uint p0, uint p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool)", p0, p1, p2)); + } + + function log(uint p0, uint p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address)", p0, p1, p2)); + } + + function log(uint p0, string memory p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint)", p0, p1, p2)); + } + + function log(uint p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,string)", p0, p1, p2)); + } + + function log(uint p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool)", p0, p1, p2)); + } + + function log(uint p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,address)", p0, p1, p2)); + } + + function log(uint p0, bool p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint)", p0, p1, p2)); + } + + function log(uint p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string)", p0, p1, p2)); + } + + function log(uint p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool)", p0, p1, p2)); + } + + function log(uint p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address)", p0, p1, p2)); + } + + function log(uint p0, address p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint)", p0, p1, p2)); + } + + function log(uint p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,string)", p0, p1, p2)); + } + + function log(uint p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool)", p0, p1, p2)); + } + + function log(uint p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,address)", p0, p1, p2)); + } + + function log(string memory p0, uint p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint)", p0, p1, p2)); + } + + function log(string memory p0, uint p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,string)", p0, p1, p2)); + } + + function log(string memory p0, uint p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool)", p0, p1, p2)); + } + + function log(string memory p0, uint p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,address)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2)); + } + + function log(string memory p0, address p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint)", p0, p1, p2)); + } + + function log(string memory p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string)", p0, p1, p2)); + } + + function log(string memory p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2)); + } + + function log(string memory p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address)", p0, p1, p2)); + } + + function log(bool p0, uint p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint)", p0, p1, p2)); + } + + function log(bool p0, uint p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string)", p0, p1, p2)); + } + + function log(bool p0, uint p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool)", p0, p1, p2)); + } + + function log(bool p0, uint p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2)); + } + + function log(bool p0, bool p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint)", p0, p1, p2)); + } + + function log(bool p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2)); + } + + function log(bool p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2)); + } + + function log(bool p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2)); + } + + function log(bool p0, address p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint)", p0, p1, p2)); + } + + function log(bool p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2)); + } + + function log(bool p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2)); + } + + function log(bool p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2)); + } + + function log(address p0, uint p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint)", p0, p1, p2)); + } + + function log(address p0, uint p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,string)", p0, p1, p2)); + } + + function log(address p0, uint p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool)", p0, p1, p2)); + } + + function log(address p0, uint p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,address)", p0, p1, p2)); + } + + function log(address p0, string memory p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint)", p0, p1, p2)); + } + + function log(address p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string)", p0, p1, p2)); + } + + function log(address p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2)); + } + + function log(address p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address)", p0, p1, p2)); + } + + function log(address p0, bool p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint)", p0, p1, p2)); + } + + function log(address p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2)); + } + + function log(address p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2)); + } + + function log(address p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2)); + } + + function log(address p0, address p1, uint p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint)", p0, p1, p2)); + } + + function log(address p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string)", p0, p1, p2)); + } + + function log(address p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2)); + } + + function log(address p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address)", p0, p1, p2)); + } + + function log(uint p0, uint p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,string)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,address)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,string)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,address)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,string)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,address)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,string)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, uint p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,address)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,string)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,address)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,string)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,address)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,string)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,address)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,string)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,address)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,string)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,address)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,string)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,address)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,string)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,address)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,string)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,address)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,string)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,address)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,string)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,address)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,uint)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,string)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,bool)", p0, p1, p2, p3)); + } + + function log(uint p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,uint)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,uint)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,uint)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,uint)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,uint)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,uint)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,uint)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,uint)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,uint)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,uint)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,uint)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,uint)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,uint)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,uint)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,uint)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,uint)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,uint)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, uint p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,uint)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,address)", p0, p1, p2, p3)); + } + +} \ No newline at end of file diff --git a/getting-started/foundry/lib/forge-std/src/console2.sol b/getting-started/foundry/lib/forge-std/src/console2.sol new file mode 100644 index 00000000..2edfda5b --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/console2.sol @@ -0,0 +1,1538 @@ +// SPDX-License-Identifier: MIT +pragma solidity >=0.4.22 <0.9.0; + +// The orignal console.sol uses `int` and `uint` for computing function selectors, but it should +// use `int256` and `uint256`. This modified version fixes that. This version is recommended +// over `console.sol` if you don't need compatibility with Hardhat as the logs will show up in +// forge stack traces. If you do need compatibility with Hardhat, you must use `console.sol`. +// Reference: https://github.com/NomicFoundation/hardhat/issues/2178 + +library console2 { + address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67); + + function _sendLogPayload(bytes memory payload) private view { + uint256 payloadLength = payload.length; + address consoleAddress = CONSOLE_ADDRESS; + assembly { + let payloadStart := add(payload, 32) + let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0) + } + } + + function log() internal view { + _sendLogPayload(abi.encodeWithSignature("log()")); + } + + function logInt(int256 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(int256)", p0)); + } + + function logUint(uint256 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256)", p0)); + } + + function logString(string memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); + } + + function logBool(bool p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); + } + + function logAddress(address p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); + } + + function logBytes(bytes memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); + } + + function logBytes1(bytes1 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); + } + + function logBytes2(bytes2 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); + } + + function logBytes3(bytes3 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); + } + + function logBytes4(bytes4 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); + } + + function logBytes5(bytes5 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); + } + + function logBytes6(bytes6 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); + } + + function logBytes7(bytes7 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); + } + + function logBytes8(bytes8 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); + } + + function logBytes9(bytes9 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); + } + + function logBytes10(bytes10 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); + } + + function logBytes11(bytes11 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); + } + + function logBytes12(bytes12 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); + } + + function logBytes13(bytes13 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); + } + + function logBytes14(bytes14 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); + } + + function logBytes15(bytes15 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); + } + + function logBytes16(bytes16 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); + } + + function logBytes17(bytes17 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); + } + + function logBytes18(bytes18 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); + } + + function logBytes19(bytes19 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); + } + + function logBytes20(bytes20 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); + } + + function logBytes21(bytes21 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); + } + + function logBytes22(bytes22 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); + } + + function logBytes23(bytes23 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); + } + + function logBytes24(bytes24 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); + } + + function logBytes25(bytes25 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); + } + + function logBytes26(bytes26 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); + } + + function logBytes27(bytes27 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); + } + + function logBytes28(bytes28 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); + } + + function logBytes29(bytes29 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); + } + + function logBytes30(bytes30 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); + } + + function logBytes31(bytes31 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); + } + + function logBytes32(bytes32 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); + } + + function log(uint256 p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256)", p0)); + } + + function log(string memory p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); + } + + function log(bool p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); + } + + function log(address p0) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); + } + + function log(uint256 p0, uint256 p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256)", p0, p1)); + } + + function log(uint256 p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string)", p0, p1)); + } + + function log(uint256 p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool)", p0, p1)); + } + + function log(uint256 p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address)", p0, p1)); + } + + function log(string memory p0, uint256 p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256)", p0, p1)); + } + + function log(string memory p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); + } + + function log(string memory p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); + } + + function log(string memory p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); + } + + function log(bool p0, uint256 p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256)", p0, p1)); + } + + function log(bool p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); + } + + function log(bool p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); + } + + function log(bool p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); + } + + function log(address p0, uint256 p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256)", p0, p1)); + } + + function log(address p0, string memory p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); + } + + function log(address p0, bool p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); + } + + function log(address p0, address p1) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address)", p0, p1)); + } + + function log(uint256 p0, uint256 p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256)", p0, p1, p2)); + } + + function log(uint256 p0, uint256 p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string)", p0, p1, p2)); + } + + function log(uint256 p0, uint256 p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool)", p0, p1, p2)); + } + + function log(uint256 p0, uint256 p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address)", p0, p1, p2)); + } + + function log(uint256 p0, string memory p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256)", p0, p1, p2)); + } + + function log(uint256 p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string)", p0, p1, p2)); + } + + function log(uint256 p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool)", p0, p1, p2)); + } + + function log(uint256 p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address)", p0, p1, p2)); + } + + function log(uint256 p0, bool p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256)", p0, p1, p2)); + } + + function log(uint256 p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string)", p0, p1, p2)); + } + + function log(uint256 p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool)", p0, p1, p2)); + } + + function log(uint256 p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address)", p0, p1, p2)); + } + + function log(uint256 p0, address p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256)", p0, p1, p2)); + } + + function log(uint256 p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string)", p0, p1, p2)); + } + + function log(uint256 p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool)", p0, p1, p2)); + } + + function log(uint256 p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address)", p0, p1, p2)); + } + + function log(string memory p0, uint256 p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256)", p0, p1, p2)); + } + + function log(string memory p0, uint256 p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string)", p0, p1, p2)); + } + + function log(string memory p0, uint256 p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool)", p0, p1, p2)); + } + + function log(string memory p0, uint256 p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2)); + } + + function log(string memory p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2)); + } + + function log(string memory p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2)); + } + + function log(string memory p0, address p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256)", p0, p1, p2)); + } + + function log(string memory p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string)", p0, p1, p2)); + } + + function log(string memory p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2)); + } + + function log(string memory p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address)", p0, p1, p2)); + } + + function log(bool p0, uint256 p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256)", p0, p1, p2)); + } + + function log(bool p0, uint256 p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string)", p0, p1, p2)); + } + + function log(bool p0, uint256 p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool)", p0, p1, p2)); + } + + function log(bool p0, uint256 p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2)); + } + + function log(bool p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2)); + } + + function log(bool p0, bool p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256)", p0, p1, p2)); + } + + function log(bool p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2)); + } + + function log(bool p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2)); + } + + function log(bool p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2)); + } + + function log(bool p0, address p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256)", p0, p1, p2)); + } + + function log(bool p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2)); + } + + function log(bool p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2)); + } + + function log(bool p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2)); + } + + function log(address p0, uint256 p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256)", p0, p1, p2)); + } + + function log(address p0, uint256 p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string)", p0, p1, p2)); + } + + function log(address p0, uint256 p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool)", p0, p1, p2)); + } + + function log(address p0, uint256 p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address)", p0, p1, p2)); + } + + function log(address p0, string memory p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256)", p0, p1, p2)); + } + + function log(address p0, string memory p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string)", p0, p1, p2)); + } + + function log(address p0, string memory p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2)); + } + + function log(address p0, string memory p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address)", p0, p1, p2)); + } + + function log(address p0, bool p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256)", p0, p1, p2)); + } + + function log(address p0, bool p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2)); + } + + function log(address p0, bool p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2)); + } + + function log(address p0, bool p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2)); + } + + function log(address p0, address p1, uint256 p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256)", p0, p1, p2)); + } + + function log(address p0, address p1, string memory p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string)", p0, p1, p2)); + } + + function log(address p0, address p1, bool p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2)); + } + + function log(address p0, address p1, address p2) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address)", p0, p1, p2)); + } + + function log(uint256 p0, uint256 p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,uint256,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,string,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,bool,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, uint256 p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,uint256,address,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,uint256,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,string,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,bool,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,string,address,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,uint256,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,string,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,bool,address,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,uint256,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,string,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,bool,address)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,uint256)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,string)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,bool)", p0, p1, p2, p3)); + } + + function log(uint256 p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(uint256,address,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,uint256,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, uint256 p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,uint256,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,uint256,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,string,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint256,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,uint256,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,string,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,address)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,uint256)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,string)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,bool)", p0, p1, p2, p3)); + } + + function log(string memory p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(string,address,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,uint256,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, uint256 p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,uint256,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint256,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint256,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint256,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,address)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,uint256)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,string)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,bool)", p0, p1, p2, p3)); + } + + function log(bool p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,uint256,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, uint256 p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,uint256,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,uint256,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, string memory p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,string,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint256,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, bool p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint256 p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint256 p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint256 p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, uint256 p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,uint256,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, string memory p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,string,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, bool p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,address)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, uint256 p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,uint256)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, string memory p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,string)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, bool p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,bool)", p0, p1, p2, p3)); + } + + function log(address p0, address p1, address p2, address p3) internal view { + _sendLogPayload(abi.encodeWithSignature("log(address,address,address,address)", p0, p1, p2, p3)); + } + +} \ No newline at end of file diff --git a/getting-started/foundry/lib/forge-std/src/test/StdAssertions.t.sol b/getting-started/foundry/lib/forge-std/src/test/StdAssertions.t.sol new file mode 100644 index 00000000..29d58fa6 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/test/StdAssertions.t.sol @@ -0,0 +1,599 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.7.0 <0.9.0; + +import "../Test.sol"; + +contract StdAssertionsTest is Test +{ + string constant CUSTOM_ERROR = "guh!"; + + bool constant EXPECT_PASS = false; + bool constant EXPECT_FAIL = true; + + TestTest t = new TestTest(); + + /*////////////////////////////////////////////////////////////////////////// + FAIL(STRING) + //////////////////////////////////////////////////////////////////////////*/ + + function testShouldFail() external { + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._fail(CUSTOM_ERROR); + } + + /*////////////////////////////////////////////////////////////////////////// + ASSERT_FALSE + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertFalse_Pass() external { + t._assertFalse(false, EXPECT_PASS); + } + + function testAssertFalse_Fail() external { + vm.expectEmit(false, false, false, true); + emit log("Error: Assertion Failed"); + t._assertFalse(true, EXPECT_FAIL); + } + + function testAssertFalse_Err_Pass() external { + t._assertFalse(false, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertFalse_Err_Fail() external { + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertFalse(true, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + ASSERT_EQ(BOOL) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertEq_Bool_Pass(bool a, bool b) external { + vm.assume(a == b); + + t._assertEq(a, b, EXPECT_PASS); + } + + function testAssertEq_Bool_Fail(bool a, bool b) external { + vm.assume(a != b); + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [bool]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_BoolErr_Pass(bool a, bool b) external { + vm.assume(a == b); + + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertEq_BoolErr_Fail(bool a, bool b) external { + vm.assume(a != b); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + ASSERT_EQ(BYTES) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertEq_Bytes_Pass(bytes calldata a, bytes calldata b) external { + vm.assume(keccak256(a) == keccak256(b)); + + t._assertEq(a, b, EXPECT_PASS); + } + + function testAssertEq_Bytes_Fail(bytes calldata a, bytes calldata b) external { + vm.assume(keccak256(a) != keccak256(b)); + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [bytes]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_BytesErr_Pass(bytes calldata a, bytes calldata b) external { + vm.assume(keccak256(a) == keccak256(b)); + + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertEq_BytesErr_Fail(bytes calldata a, bytes calldata b) external { + vm.assume(keccak256(a) != keccak256(b)); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + ASSERT_EQ(ARRAY) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertEq_UintArr_Pass(uint256 e0, uint256 e1, uint256 e2) public { + uint256[] memory a = new uint256[](3); + a[0] = e0; + a[1] = e1; + a[2] = e2; + uint256[] memory b = new uint256[](3); + b[0] = e0; + b[1] = e1; + b[2] = e2; + + t._assertEq(a, b, EXPECT_PASS); + } + + function testAssertEq_IntArr_Pass(int256 e0, int256 e1, int256 e2) public { + int256[] memory a = new int256[](3); + a[0] = e0; + a[1] = e1; + a[2] = e2; + int256[] memory b = new int256[](3); + b[0] = e0; + b[1] = e1; + b[2] = e2; + + t._assertEq(a, b, EXPECT_PASS); + } + + function testAssertEq_AddressArr_Pass(address e0, address e1, address e2) public { + address[] memory a = new address[](3); + a[0] = e0; + a[1] = e1; + a[2] = e2; + address[] memory b = new address[](3); + b[0] = e0; + b[1] = e1; + b[2] = e2; + + t._assertEq(a, b, EXPECT_PASS); + } + + function testAssertEq_UintArr_FailEl(uint256 e1) public { + vm.assume(e1 != 0); + uint256[] memory a = new uint256[](3); + uint256[] memory b = new uint256[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [uint[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_IntArr_FailEl(int256 e1) public { + vm.assume(e1 != 0); + int256[] memory a = new int256[](3); + int256[] memory b = new int256[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [int[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + + function testAssertEq_AddressArr_FailEl(address e1) public { + vm.assume(e1 != address(0)); + address[] memory a = new address[](3); + address[] memory b = new address[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [address[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_UintArrErr_FailEl(uint256 e1) public { + vm.assume(e1 != 0); + uint256[] memory a = new uint256[](3); + uint256[] memory b = new uint256[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [uint[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + function testAssertEq_IntArrErr_FailEl(int256 e1) public { + vm.assume(e1 != 0); + int256[] memory a = new int256[](3); + int256[] memory b = new int256[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [int[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + + function testAssertEq_AddressArrErr_FailEl(address e1) public { + vm.assume(e1 != address(0)); + address[] memory a = new address[](3); + address[] memory b = new address[](3); + b[1] = e1; + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [address[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + function testAssertEq_UintArr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + uint256[] memory a = new uint256[](lenA); + uint256[] memory b = new uint256[](lenB); + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [uint[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_IntArr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + int256[] memory a = new int256[](lenA); + int256[] memory b = new int256[](lenB); + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [int[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_AddressArr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + address[] memory a = new address[](lenA); + address[] memory b = new address[](lenB); + + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [address[]]"); + t._assertEq(a, b, EXPECT_FAIL); + } + + function testAssertEq_UintArrErr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + uint256[] memory a = new uint256[](lenA); + uint256[] memory b = new uint256[](lenB); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [uint[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + function testAssertEq_IntArrErr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + int256[] memory a = new int256[](lenA); + int256[] memory b = new int256[](lenB); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [int[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + function testAssertEq_AddressArrErr_FailLen(uint256 lenA, uint256 lenB) public { + vm.assume(lenA != lenB); + vm.assume(lenA <= 10000); + vm.assume(lenB <= 10000); + address[] memory a = new address[](lenA); + address[] memory b = new address[](lenB); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + vm.expectEmit(false, false, false, true); + emit log("Error: a == b not satisfied [address[]]"); + t._assertEq(a, b, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + APPROX_EQ_ABS(UINT) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertApproxEqAbs_Uint_Pass(uint256 a, uint256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) <= maxDelta); + + t._assertApproxEqAbs(a, b, maxDelta, EXPECT_PASS); + } + + function testAssertApproxEqAbs_Uint_Fail(uint256 a, uint256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) > maxDelta); + + vm.expectEmit(false, false, false, true); + emit log("Error: a ~= b not satisfied [uint]"); + t._assertApproxEqAbs(a, b, maxDelta, EXPECT_FAIL); + } + + function testAssertApproxEqAbs_UintErr_Pass(uint256 a, uint256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) <= maxDelta); + + t._assertApproxEqAbs(a, b, maxDelta, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertApproxEqAbs_UintErr_Fail(uint256 a, uint256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) > maxDelta); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertApproxEqAbs(a, b, maxDelta, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + APPROX_EQ_ABS(INT) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertApproxEqAbs_Int_Pass(int256 a, int256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) <= maxDelta); + + t._assertApproxEqAbs(a, b, maxDelta, EXPECT_PASS); + } + + function testAssertApproxEqAbs_Int_Fail(int256 a, int256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) > maxDelta); + + vm.expectEmit(false, false, false, true); + emit log("Error: a ~= b not satisfied [int]"); + t._assertApproxEqAbs(a, b, maxDelta, EXPECT_FAIL); + } + + function testAssertApproxEqAbs_IntErr_Pass(int256 a, int256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) <= maxDelta); + + t._assertApproxEqAbs(a, b, maxDelta, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertApproxEqAbs_IntErr_Fail(int256 a, int256 b, uint256 maxDelta) external { + vm.assume(stdMath.delta(a, b) > maxDelta); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertApproxEqAbs(a, b, maxDelta, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + APPROX_EQ_REL(UINT) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertApproxEqRel_Uint_Pass(uint256 a, uint256 b, uint256 maxPercentDelta) external { + vm.assume(a < type(uint128).max && b < type(uint128).max && b != 0); + vm.assume(stdMath.percentDelta(a, b) <= maxPercentDelta); + + t._assertApproxEqRel(a, b, maxPercentDelta, EXPECT_PASS); + } + + function testAssertApproxEqRel_Uint_Fail(uint256 a, uint256 b, uint256 maxPercentDelta) external { + vm.assume(a < type(uint128).max && b < type(uint128).max && b != 0); + vm.assume(stdMath.percentDelta(a, b) > maxPercentDelta); + + vm.expectEmit(false, false, false, true); + emit log("Error: a ~= b not satisfied [uint]"); + t._assertApproxEqRel(a, b, maxPercentDelta, EXPECT_FAIL); + } + + function testAssertApproxEqRel_UintErr_Pass(uint256 a, uint256 b, uint256 maxPercentDelta) external { + vm.assume(a < type(uint128).max && b < type(uint128).max && b != 0); + vm.assume(stdMath.percentDelta(a, b) <= maxPercentDelta); + + t._assertApproxEqRel(a, b, maxPercentDelta, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertApproxEqRel_UintErr_Fail(uint256 a, uint256 b, uint256 maxPercentDelta) external { + vm.assume(a < type(uint128).max && b < type(uint128).max && b != 0); + vm.assume(stdMath.percentDelta(a, b) > maxPercentDelta); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertApproxEqRel(a, b, maxPercentDelta, CUSTOM_ERROR, EXPECT_FAIL); + } + + /*////////////////////////////////////////////////////////////////////////// + APPROX_EQ_REL(INT) + //////////////////////////////////////////////////////////////////////////*/ + + function testAssertApproxEqRel_Int_Pass(int128 a, int128 b, uint128 maxPercentDelta) external { + vm.assume(b != 0); + vm.assume(stdMath.percentDelta(a, b) <= maxPercentDelta); + + t._assertApproxEqRel(a, b, maxPercentDelta, EXPECT_PASS); + } + + function testAssertApproxEqRel_Int_Fail(int128 a, int128 b, uint128 maxPercentDelta) external { + vm.assume(b != 0); + vm.assume(stdMath.percentDelta(a, b) > maxPercentDelta); + + vm.expectEmit(false, false, false, true); + emit log("Error: a ~= b not satisfied [int]"); + t._assertApproxEqRel(a, b, maxPercentDelta, EXPECT_FAIL); + } + + function testAssertApproxEqRel_IntErr_Pass(int128 a, int128 b, uint128 maxPercentDelta) external { + vm.assume(b != 0); + vm.assume(stdMath.percentDelta(a, b) <= maxPercentDelta); + + t._assertApproxEqRel(a, b, maxPercentDelta, CUSTOM_ERROR, EXPECT_PASS); + } + + function testAssertApproxEqRel_IntErr_Fail(int128 a, int128 b, uint128 maxPercentDelta) external { + vm.assume(b != 0); + vm.assume(stdMath.percentDelta(a, b) > maxPercentDelta); + + vm.expectEmit(false, false, false, true); + emit log_named_string("Error", CUSTOM_ERROR); + t._assertApproxEqRel(a, b, maxPercentDelta, CUSTOM_ERROR, EXPECT_FAIL); + } +} + + +contract TestTest is Test +{ + modifier expectFailure(bool expectFail) { + bool preState = vm.load(HEVM_ADDRESS, bytes32("failed")) != bytes32(0x00); + _; + bool postState = vm.load(HEVM_ADDRESS, bytes32("failed")) != bytes32(0x00); + + if (preState == true) { + return; + } + + if (expectFail) { + require(postState == true, "expected failure not triggered"); + + // unwind the expected failure + vm.store(HEVM_ADDRESS, bytes32("failed"), bytes32(uint256(0x00))); + } else { + require(postState == false, "unexpected failure was triggered"); + } + } + + function _fail(string memory err) external expectFailure(true) { + fail(err); + } + + function _assertFalse(bool data, bool expectFail) external expectFailure(expectFail) { + assertFalse(data); + } + + function _assertFalse(bool data, string memory err, bool expectFail) external expectFailure(expectFail) { + assertFalse(data, err); + } + + function _assertEq(bool a, bool b, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b); + } + + function _assertEq(bool a, bool b, string memory err, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b, err); + } + + function _assertEq(bytes memory a, bytes memory b, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b); + } + + function _assertEq(bytes memory a, + bytes memory b, + string memory err, + bool expectFail + ) external expectFailure(expectFail) { + assertEq(a, b, err); + } + + function _assertEq(uint256[] memory a, uint256[] memory b, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b); + } + + function _assertEq(int256[] memory a, int256[] memory b, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b); + } + + function _assertEq(address[] memory a, address[] memory b, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b); + } + + function _assertEq(uint256[] memory a, uint256[] memory b, string memory err, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b, err); + } + + function _assertEq(int256[] memory a, int256[] memory b, string memory err, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b, err); + } + + function _assertEq(address[] memory a, address[] memory b, string memory err, bool expectFail) external expectFailure(expectFail) { + assertEq(a, b, err); + } + + + function _assertApproxEqAbs( + uint256 a, + uint256 b, + uint256 maxDelta, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqAbs(a, b, maxDelta); + } + + function _assertApproxEqAbs( + uint256 a, + uint256 b, + uint256 maxDelta, + string memory err, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqAbs(a, b, maxDelta, err); + } + + function _assertApproxEqAbs( + int256 a, + int256 b, + uint256 maxDelta, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqAbs(a, b, maxDelta); + } + + function _assertApproxEqAbs( + int256 a, + int256 b, + uint256 maxDelta, + string memory err, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqAbs(a, b, maxDelta, err); + } + + function _assertApproxEqRel( + uint256 a, + uint256 b, + uint256 maxPercentDelta, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqRel(a, b, maxPercentDelta); + } + + function _assertApproxEqRel( + uint256 a, + uint256 b, + uint256 maxPercentDelta, + string memory err, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqRel(a, b, maxPercentDelta, err); + } + + function _assertApproxEqRel( + int256 a, + int256 b, + uint256 maxPercentDelta, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqRel(a, b, maxPercentDelta); + } + + function _assertApproxEqRel( + int256 a, + int256 b, + uint256 maxPercentDelta, + string memory err, + bool expectFail + ) external expectFailure(expectFail) { + assertApproxEqRel(a, b, maxPercentDelta, err); + } +} diff --git a/getting-started/foundry/lib/forge-std/src/test/StdCheats.t.sol b/getting-started/foundry/lib/forge-std/src/test/StdCheats.t.sol new file mode 100644 index 00000000..9a48ab57 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/test/StdCheats.t.sol @@ -0,0 +1,193 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.7.0 <0.9.0; + +import "../Test.sol"; + +contract StdCheatsTest is Test { + Bar test; + + function setUp() public { + test = new Bar(); + } + + function testSkip() public { + vm.warp(100); + skip(25); + assertEq(block.timestamp, 125); + } + + function testRewind() public { + vm.warp(100); + rewind(25); + assertEq(block.timestamp, 75); + } + + function testHoax() public { + hoax(address(1337)); + test.bar{value: 100}(address(1337)); + } + + function testHoaxOrigin() public { + hoax(address(1337), address(1337)); + test.origin{value: 100}(address(1337)); + } + + function testHoaxDifferentAddresses() public { + hoax(address(1337), address(7331)); + test.origin{value: 100}(address(1337), address(7331)); + } + + function testStartHoax() public { + startHoax(address(1337)); + test.bar{value: 100}(address(1337)); + test.bar{value: 100}(address(1337)); + vm.stopPrank(); + test.bar(address(this)); + } + + function testStartHoaxOrigin() public { + startHoax(address(1337), address(1337)); + test.origin{value: 100}(address(1337)); + test.origin{value: 100}(address(1337)); + vm.stopPrank(); + test.bar(address(this)); + } + + function testChangePrank() public { + vm.startPrank(address(1337)); + test.bar(address(1337)); + changePrank(address(0xdead)); + test.bar(address(0xdead)); + changePrank(address(1337)); + test.bar(address(1337)); + vm.stopPrank(); + } + + function testDeal() public { + deal(address(this), 1 ether); + assertEq(address(this).balance, 1 ether); + } + + function testDealToken() public { + Bar barToken = new Bar(); + address bar = address(barToken); + deal(bar, address(this), 10000e18); + assertEq(barToken.balanceOf(address(this)), 10000e18); + } + + function testDealTokenAdjustTS() public { + Bar barToken = new Bar(); + address bar = address(barToken); + deal(bar, address(this), 10000e18, true); + assertEq(barToken.balanceOf(address(this)), 10000e18); + assertEq(barToken.totalSupply(), 20000e18); + deal(bar, address(this), 0, true); + assertEq(barToken.balanceOf(address(this)), 0); + assertEq(barToken.totalSupply(), 10000e18); + } + + function testBound() public { + assertEq(bound(5, 0, 4), 0); + assertEq(bound(0, 69, 69), 69); + assertEq(bound(0, 68, 69), 68); + assertEq(bound(10, 150, 190), 160); + assertEq(bound(300, 2800, 3200), 3100); + assertEq(bound(9999, 1337, 6666), 6006); + } + + function testCannotBoundMaxLessThanMin() public { + vm.expectRevert(bytes("Test bound(uint256,uint256,uint256): Max is less than min.")); + bound(5, 100, 10); + } + + function testBound( + uint256 num, + uint256 min, + uint256 max + ) public { + if (min > max) (min, max) = (max, min); + + uint256 bounded = bound(num, min, max); + + assertGe(bounded, min); + assertLe(bounded, max); + } + + function testBoundUint256Max() public { + assertEq(bound(0, type(uint256).max - 1, type(uint256).max), type(uint256).max - 1); + assertEq(bound(1, type(uint256).max - 1, type(uint256).max), type(uint256).max); + } + + function testCannotBoundMaxLessThanMin( + uint256 num, + uint256 min, + uint256 max + ) public { + vm.assume(min > max); + vm.expectRevert(bytes("Test bound(uint256,uint256,uint256): Max is less than min.")); + bound(num, min, max); + } + + function testDeployCode() public { + address deployed = deployCode("StdCheats.t.sol:StdCheatsTest", bytes("")); + assertEq(string(getCode(deployed)), string(getCode(address(this)))); + } + + function testDeployCodeNoArgs() public { + address deployed = deployCode("StdCheats.t.sol:StdCheatsTest"); + assertEq(string(getCode(deployed)), string(getCode(address(this)))); + } + + function testDeployCodeFail() public { + vm.expectRevert(bytes("Test deployCode(string): Deployment failed.")); + this.deployCode("StdCheats.t.sol:RevertingContract"); + } + + function getCode(address who) internal view returns (bytes memory o_code) { + /// @solidity memory-safe-assembly + assembly { + // retrieve the size of the code, this needs assembly + let size := extcodesize(who) + // allocate output byte array - this could also be done without assembly + // by using o_code = new bytes(size) + o_code := mload(0x40) + // new "memory end" including padding + mstore(0x40, add(o_code, and(add(add(size, 0x20), 0x1f), not(0x1f)))) + // store length in memory + mstore(o_code, size) + // actually retrieve the code, this needs assembly + extcodecopy(who, add(o_code, 0x20), 0, size) + } + } +} + +contract Bar { + constructor() { + /// `DEAL` STDCHEAT + totalSupply = 10000e18; + balanceOf[address(this)] = totalSupply; + } + + /// `HOAX` STDCHEATS + function bar(address expectedSender) public payable { + require(msg.sender == expectedSender, "!prank"); + } + function origin(address expectedSender) public payable { + require(msg.sender == expectedSender, "!prank"); + require(tx.origin == expectedSender, "!prank"); + } + function origin(address expectedSender, address expectedOrigin) public payable { + require(msg.sender == expectedSender, "!prank"); + require(tx.origin == expectedOrigin, "!prank"); + } + + /// `DEAL` STDCHEAT + mapping (address => uint256) public balanceOf; + uint256 public totalSupply; +} + +contract RevertingContract { + constructor() { + revert(); + } +} \ No newline at end of file diff --git a/getting-started/foundry/lib/forge-std/src/test/StdError.t.sol b/getting-started/foundry/lib/forge-std/src/test/StdError.t.sol new file mode 100644 index 00000000..9382d3fd --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/test/StdError.t.sol @@ -0,0 +1,124 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.8.10 <0.9.0; + +import "../Test.sol"; + +contract StdErrorsTest is Test { + ErrorsTest test; + + function setUp() public { + test = new ErrorsTest(); + } + + function testExpectAssertion() public { + vm.expectRevert(stdError.assertionError); + test.assertionError(); + } + + function testExpectArithmetic() public { + vm.expectRevert(stdError.arithmeticError); + test.arithmeticError(10); + } + + function testExpectDiv() public { + vm.expectRevert(stdError.divisionError); + test.divError(0); + } + + function testExpectMod() public { + vm.expectRevert(stdError.divisionError); + test.modError(0); + } + + function testExpectEnum() public { + vm.expectRevert(stdError.enumConversionError); + test.enumConversion(1); + } + + function testExpectEncodeStg() public { + vm.expectRevert(stdError.encodeStorageError); + test.encodeStgError(); + } + + function testExpectPop() public { + vm.expectRevert(stdError.popError); + test.pop(); + } + + function testExpectOOB() public { + vm.expectRevert(stdError.indexOOBError); + test.indexOOBError(1); + } + + function testExpectMem() public { + vm.expectRevert(stdError.memOverflowError); + test.mem(); + } + + function testExpectIntern() public { + vm.expectRevert(stdError.zeroVarError); + test.intern(); + } + + function testExpectLowLvl() public { + vm.expectRevert(stdError.lowLevelError); + test.someArr(0); + } +} + +contract ErrorsTest { + enum T { + T1 + } + + uint256[] public someArr; + bytes someBytes; + + function assertionError() public pure { + assert(false); + } + + function arithmeticError(uint256 a) public pure { + a -= 100; + } + + function divError(uint256 a) public pure { + 100 / a; + } + + function modError(uint256 a) public pure { + 100 % a; + } + + function enumConversion(uint256 a) public pure { + T(a); + } + + function encodeStgError() public { + /// @solidity memory-safe-assembly + assembly { + sstore(someBytes.slot, 1) + } + keccak256(someBytes); + } + + function pop() public { + someArr.pop(); + } + + function indexOOBError(uint256 a) public pure { + uint256[] memory t = new uint256[](0); + t[a]; + } + + function mem() public pure { + uint256 l = 2**256 / 32; + new uint256[](l); + } + + function intern() public returns (uint256) { + function(uint256) internal returns (uint256) x; + x(2); + return 7; + } +} diff --git a/getting-started/foundry/lib/forge-std/src/test/StdMath.t.sol b/getting-started/foundry/lib/forge-std/src/test/StdMath.t.sol new file mode 100644 index 00000000..8317118a --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/test/StdMath.t.sol @@ -0,0 +1,200 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.8.0 <0.9.0; + +import "../Test.sol"; + +contract StdMathTest is Test +{ + function testGetAbs() external { + assertEq(stdMath.abs(-50), 50); + assertEq(stdMath.abs(50), 50); + assertEq(stdMath.abs(-1337), 1337); + assertEq(stdMath.abs(0), 0); + + assertEq(stdMath.abs(type(int256).min), (type(uint256).max >> 1) + 1); + assertEq(stdMath.abs(type(int256).max), (type(uint256).max >> 1)); + } + + function testGetAbs_Fuzz(int256 a) external { + uint256 manualAbs = getAbs(a); + + uint256 abs = stdMath.abs(a); + + assertEq(abs, manualAbs); + } + + function testGetDelta_Uint() external { + assertEq(stdMath.delta(uint256(0), uint256(0)), 0); + assertEq(stdMath.delta(uint256(0), uint256(1337)), 1337); + assertEq(stdMath.delta(uint256(0), type(uint64).max), type(uint64).max); + assertEq(stdMath.delta(uint256(0), type(uint128).max), type(uint128).max); + assertEq(stdMath.delta(uint256(0), type(uint256).max), type(uint256).max); + + assertEq(stdMath.delta(0, uint256(0)), 0); + assertEq(stdMath.delta(1337, uint256(0)), 1337); + assertEq(stdMath.delta(type(uint64).max, uint256(0)), type(uint64).max); + assertEq(stdMath.delta(type(uint128).max, uint256(0)), type(uint128).max); + assertEq(stdMath.delta(type(uint256).max, uint256(0)), type(uint256).max); + + assertEq(stdMath.delta(1337, uint256(1337)), 0); + assertEq(stdMath.delta(type(uint256).max, type(uint256).max), 0); + assertEq(stdMath.delta(5000, uint256(1250)), 3750); + } + + function testGetDelta_Uint_Fuzz(uint256 a, uint256 b) external { + uint256 manualDelta; + if (a > b) { + manualDelta = a - b; + } else { + manualDelta = b - a; + } + + uint256 delta = stdMath.delta(a, b); + + assertEq(delta, manualDelta); + } + + function testGetDelta_Int() external { + assertEq(stdMath.delta(int256(0), int256(0)), 0); + assertEq(stdMath.delta(int256(0), int256(1337)), 1337); + assertEq(stdMath.delta(int256(0), type(int64).max), type(uint64).max >> 1); + assertEq(stdMath.delta(int256(0), type(int128).max), type(uint128).max >> 1); + assertEq(stdMath.delta(int256(0), type(int256).max), type(uint256).max >> 1); + + assertEq(stdMath.delta(0, int256(0)), 0); + assertEq(stdMath.delta(1337, int256(0)), 1337); + assertEq(stdMath.delta(type(int64).max, int256(0)), type(uint64).max >> 1); + assertEq(stdMath.delta(type(int128).max, int256(0)), type(uint128).max >> 1); + assertEq(stdMath.delta(type(int256).max, int256(0)), type(uint256).max >> 1); + + assertEq(stdMath.delta(-0, int256(0)), 0); + assertEq(stdMath.delta(-1337, int256(0)), 1337); + assertEq(stdMath.delta(type(int64).min, int256(0)), (type(uint64).max >> 1) + 1); + assertEq(stdMath.delta(type(int128).min, int256(0)), (type(uint128).max >> 1) + 1); + assertEq(stdMath.delta(type(int256).min, int256(0)), (type(uint256).max >> 1) + 1); + + assertEq(stdMath.delta(int256(0), -0), 0); + assertEq(stdMath.delta(int256(0), -1337), 1337); + assertEq(stdMath.delta(int256(0), type(int64).min), (type(uint64).max >> 1) + 1); + assertEq(stdMath.delta(int256(0), type(int128).min), (type(uint128).max >> 1) + 1); + assertEq(stdMath.delta(int256(0), type(int256).min), (type(uint256).max >> 1) + 1); + + assertEq(stdMath.delta(1337, int256(1337)), 0); + assertEq(stdMath.delta(type(int256).max, type(int256).max), 0); + assertEq(stdMath.delta(type(int256).min, type(int256).min), 0); + assertEq(stdMath.delta(type(int256).min, type(int256).max), type(uint256).max); + assertEq(stdMath.delta(5000, int256(1250)), 3750); + } + + function testGetDelta_Int_Fuzz(int256 a, int256 b) external { + uint256 absA = getAbs(a); + uint256 absB = getAbs(b); + uint256 absDelta = absA > absB + ? absA - absB + : absB - absA; + + uint256 manualDelta; + if ((a >= 0 && b >= 0) || (a < 0 && b < 0)) { + manualDelta = absDelta; + } + // (a < 0 && b >= 0) || (a >= 0 && b < 0) + else { + manualDelta = absA + absB; + } + + uint256 delta = stdMath.delta(a, b); + + assertEq(delta, manualDelta); + } + + function testGetPercentDelta_Uint() external { + assertEq(stdMath.percentDelta(uint256(0), uint256(1337)), 1e18); + assertEq(stdMath.percentDelta(uint256(0), type(uint64).max), 1e18); + assertEq(stdMath.percentDelta(uint256(0), type(uint128).max), 1e18); + assertEq(stdMath.percentDelta(uint256(0), type(uint192).max), 1e18); + + assertEq(stdMath.percentDelta(1337, uint256(1337)), 0); + assertEq(stdMath.percentDelta(type(uint192).max, type(uint192).max), 0); + assertEq(stdMath.percentDelta(0, uint256(2500)), 1e18); + assertEq(stdMath.percentDelta(2500, uint256(2500)), 0); + assertEq(stdMath.percentDelta(5000, uint256(2500)), 1e18); + assertEq(stdMath.percentDelta(7500, uint256(2500)), 2e18); + + vm.expectRevert(stdError.divisionError); + stdMath.percentDelta(uint256(1), 0); + } + + function testGetPercentDelta_Uint_Fuzz(uint192 a, uint192 b) external { + vm.assume(b != 0); + uint256 manualDelta; + if (a > b) { + manualDelta = a - b; + } else { + manualDelta = b - a; + } + + uint256 manualPercentDelta = manualDelta * 1e18 / b; + uint256 percentDelta = stdMath.percentDelta(a, b); + + assertEq(percentDelta, manualPercentDelta); + } + + function testGetPercentDelta_Int() external { + assertEq(stdMath.percentDelta(int256(0), int256(1337)), 1e18); + assertEq(stdMath.percentDelta(int256(0), -1337), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int64).min), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int128).min), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int192).min), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int64).max), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int128).max), 1e18); + assertEq(stdMath.percentDelta(int256(0), type(int192).max), 1e18); + + assertEq(stdMath.percentDelta(1337, int256(1337)), 0); + assertEq(stdMath.percentDelta(type(int192).max, type(int192).max), 0); + assertEq(stdMath.percentDelta(type(int192).min, type(int192).min), 0); + + assertEq(stdMath.percentDelta(type(int192).min, type(int192).max), 2e18); // rounds the 1 wei diff down + assertEq(stdMath.percentDelta(type(int192).max, type(int192).min), 2e18 - 1); // rounds the 1 wei diff down + assertEq(stdMath.percentDelta(0, int256(2500)), 1e18); + assertEq(stdMath.percentDelta(2500, int256(2500)), 0); + assertEq(stdMath.percentDelta(5000, int256(2500)), 1e18); + assertEq(stdMath.percentDelta(7500, int256(2500)), 2e18); + + vm.expectRevert(stdError.divisionError); + stdMath.percentDelta(int256(1), 0); + } + + function testGetPercentDelta_Int_Fuzz(int192 a, int192 b) external { + vm.assume(b != 0); + uint256 absA = getAbs(a); + uint256 absB = getAbs(b); + uint256 absDelta = absA > absB + ? absA - absB + : absB - absA; + + uint256 manualDelta; + if ((a >= 0 && b >= 0) || (a < 0 && b < 0)) { + manualDelta = absDelta; + } + // (a < 0 && b >= 0) || (a >= 0 && b < 0) + else { + manualDelta = absA + absB; + } + + uint256 manualPercentDelta = manualDelta * 1e18 / absB; + uint256 percentDelta = stdMath.percentDelta(a, b); + + assertEq(percentDelta, manualPercentDelta); + } + + /*////////////////////////////////////////////////////////////////////////// + HELPERS + //////////////////////////////////////////////////////////////////////////*/ + + function getAbs(int256 a) private pure returns (uint256) { + if (a < 0) + return a == type(int256).min ? uint256(type(int256).max) + 1 : uint256(-a); + + return uint256(a); + } +} diff --git a/getting-started/foundry/lib/forge-std/src/test/StdStorage.t.sol b/getting-started/foundry/lib/forge-std/src/test/StdStorage.t.sol new file mode 100644 index 00000000..d0999da1 --- /dev/null +++ b/getting-started/foundry/lib/forge-std/src/test/StdStorage.t.sol @@ -0,0 +1,321 @@ +// SPDX-License-Identifier: Unlicense +pragma solidity >=0.7.0 <0.9.0; + +import "../Test.sol"; + +contract StdStorageTest is Test { + using stdStorage for StdStorage; + + StorageTest test; + + function setUp() public { + test = new StorageTest(); + } + + function testStorageHidden() public { + assertEq(uint256(keccak256("my.random.var")), stdstore.target(address(test)).sig("hidden()").find()); + } + + function testStorageObvious() public { + assertEq(uint256(0), stdstore.target(address(test)).sig("exists()").find()); + } + + function testStorageCheckedWriteHidden() public { + stdstore.target(address(test)).sig(test.hidden.selector).checked_write(100); + assertEq(uint256(test.hidden()), 100); + } + + function testStorageCheckedWriteObvious() public { + stdstore.target(address(test)).sig(test.exists.selector).checked_write(100); + assertEq(test.exists(), 100); + } + + function testStorageMapStructA() public { + uint256 slot = stdstore + .target(address(test)) + .sig(test.map_struct.selector) + .with_key(address(this)) + .depth(0) + .find(); + assertEq(uint256(keccak256(abi.encode(address(this), 4))), slot); + } + + function testStorageMapStructB() public { + uint256 slot = stdstore + .target(address(test)) + .sig(test.map_struct.selector) + .with_key(address(this)) + .depth(1) + .find(); + assertEq(uint256(keccak256(abi.encode(address(this), 4))) + 1, slot); + } + + function testStorageDeepMap() public { + uint256 slot = stdstore + .target(address(test)) + .sig(test.deep_map.selector) + .with_key(address(this)) + .with_key(address(this)) + .find(); + assertEq(uint256(keccak256(abi.encode(address(this), keccak256(abi.encode(address(this), uint(5)))))), slot); + } + + function testStorageCheckedWriteDeepMap() public { + stdstore + .target(address(test)) + .sig(test.deep_map.selector) + .with_key(address(this)) + .with_key(address(this)) + .checked_write(100); + assertEq(100, test.deep_map(address(this), address(this))); + } + + function testStorageDeepMapStructA() public { + uint256 slot = stdstore + .target(address(test)) + .sig(test.deep_map_struct.selector) + .with_key(address(this)) + .with_key(address(this)) + .depth(0) + .find(); + assertEq(bytes32(uint256(keccak256(abi.encode(address(this), keccak256(abi.encode(address(this), uint(6)))))) + 0), bytes32(slot)); + } + + function testStorageDeepMapStructB() public { + uint256 slot = stdstore + .target(address(test)) + .sig(test.deep_map_struct.selector) + .with_key(address(this)) + .with_key(address(this)) + .depth(1) + .find(); + assertEq(bytes32(uint256(keccak256(abi.encode(address(this), keccak256(abi.encode(address(this), uint(6)))))) + 1), bytes32(slot)); + } + + function testStorageCheckedWriteDeepMapStructA() public { + stdstore + .target(address(test)) + .sig(test.deep_map_struct.selector) + .with_key(address(this)) + .with_key(address(this)) + .depth(0) + .checked_write(100); + (uint256 a, uint256 b) = test.deep_map_struct(address(this), address(this)); + assertEq(100, a); + assertEq(0, b); + } + + function testStorageCheckedWriteDeepMapStructB() public { + stdstore + .target(address(test)) + .sig(test.deep_map_struct.selector) + .with_key(address(this)) + .with_key(address(this)) + .depth(1) + .checked_write(100); + (uint256 a, uint256 b) = test.deep_map_struct(address(this), address(this)); + assertEq(0, a); + assertEq(100, b); + } + + function testStorageCheckedWriteMapStructA() public { + stdstore + .target(address(test)) + .sig(test.map_struct.selector) + .with_key(address(this)) + .depth(0) + .checked_write(100); + (uint256 a, uint256 b) = test.map_struct(address(this)); + assertEq(a, 100); + assertEq(b, 0); + } + + function testStorageCheckedWriteMapStructB() public { + stdstore + .target(address(test)) + .sig(test.map_struct.selector) + .with_key(address(this)) + .depth(1) + .checked_write(100); + (uint256 a, uint256 b) = test.map_struct(address(this)); + assertEq(a, 0); + assertEq(b, 100); + } + + function testStorageStructA() public { + uint256 slot = stdstore.target(address(test)).sig(test.basic.selector).depth(0).find(); + assertEq(uint256(7), slot); + } + + function testStorageStructB() public { + uint256 slot = stdstore.target(address(test)).sig(test.basic.selector).depth(1).find(); + assertEq(uint256(7) + 1, slot); + } + + function testStorageCheckedWriteStructA() public { + stdstore.target(address(test)).sig(test.basic.selector).depth(0).checked_write(100); + (uint256 a, uint256 b) = test.basic(); + assertEq(a, 100); + assertEq(b, 1337); + } + + function testStorageCheckedWriteStructB() public { + stdstore.target(address(test)).sig(test.basic.selector).depth(1).checked_write(100); + (uint256 a, uint256 b) = test.basic(); + assertEq(a, 1337); + assertEq(b, 100); + } + + function testStorageMapAddrFound() public { + uint256 slot = stdstore.target(address(test)).sig(test.map_addr.selector).with_key(address(this)).find(); + assertEq(uint256(keccak256(abi.encode(address(this), uint(1)))), slot); + } + + function testStorageMapUintFound() public { + uint256 slot = stdstore.target(address(test)).sig(test.map_uint.selector).with_key(100).find(); + assertEq(uint256(keccak256(abi.encode(100, uint(2)))), slot); + } + + function testStorageCheckedWriteMapUint() public { + stdstore.target(address(test)).sig(test.map_uint.selector).with_key(100).checked_write(100); + assertEq(100, test.map_uint(100)); + } + + function testStorageCheckedWriteMapAddr() public { + stdstore.target(address(test)).sig(test.map_addr.selector).with_key(address(this)).checked_write(100); + assertEq(100, test.map_addr(address(this))); + } + + function testStorageCheckedWriteMapBool() public { + stdstore.target(address(test)).sig(test.map_bool.selector).with_key(address(this)).checked_write(true); + assertTrue(test.map_bool(address(this))); + } + + function testFailStorageCheckedWriteMapPacked() public { + // expect PackedSlot error but not external call so cant expectRevert + stdstore.target(address(test)).sig(test.read_struct_lower.selector).with_key(address(uint160(1337))).checked_write(100); + } + + function testStorageCheckedWriteMapPackedSuccess() public { + uint256 full = test.map_packed(address(1337)); + // keep upper 128, set lower 128 to 1337 + full = (full & (uint256((1 << 128) - 1) << 128)) | 1337; + stdstore.target(address(test)).sig(test.map_packed.selector).with_key(address(uint160(1337))).checked_write(full); + assertEq(1337, test.read_struct_lower(address(1337))); + } + + function testFailStorageConst() public { + // vm.expectRevert(abi.encodeWithSignature("NotStorage(bytes4)", bytes4(keccak256("const()")))); + stdstore.target(address(test)).sig("const()").find(); + } + + function testFailStorageNativePack() public { + stdstore.target(address(test)).sig(test.tA.selector).find(); + stdstore.target(address(test)).sig(test.tB.selector).find(); + + // these both would fail + stdstore.target(address(test)).sig(test.tC.selector).find(); + stdstore.target(address(test)).sig(test.tD.selector).find(); + } + + function testStorageReadBytes32() public { + bytes32 val = stdstore.target(address(test)).sig(test.tE.selector).read_bytes32(); + assertEq(val, hex"1337"); + } + + function testStorageReadBool_False() public { + bool val = stdstore.target(address(test)).sig(test.tB.selector).read_bool(); + assertEq(val, false); + } + + function testStorageReadBool_True() public { + bool val = stdstore.target(address(test)).sig(test.tH.selector).read_bool(); + assertEq(val, true); + } + + function testStorageReadBool_Revert() public { + vm.expectRevert("stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool."); + this.readNonBoolValue(); + } + + function readNonBoolValue() public { + stdstore.target(address(test)).sig(test.tE.selector).read_bool(); + } + + function testStorageReadAddress() public { + address val = stdstore.target(address(test)).sig(test.tF.selector).read_address(); + assertEq(val, address(1337)); + } + + function testStorageReadUint() public { + uint256 val = stdstore.target(address(test)).sig(test.exists.selector).read_uint(); + assertEq(val, 1); + } + + function testStorageReadInt() public { + int256 val = stdstore.target(address(test)).sig(test.tG.selector).read_int(); + assertEq(val, type(int256).min); + } +} + +contract StorageTest { + uint256 public exists = 1; + mapping(address => uint256) public map_addr; + mapping(uint256 => uint256) public map_uint; + mapping(address => uint256) public map_packed; + mapping(address => UnpackedStruct) public map_struct; + mapping(address => mapping(address => uint256)) public deep_map; + mapping(address => mapping(address => UnpackedStruct)) public deep_map_struct; + UnpackedStruct public basic; + + uint248 public tA; + bool public tB; + + + bool public tC = false; + uint248 public tD = 1; + + + struct UnpackedStruct { + uint256 a; + uint256 b; + } + + mapping(address => bool) public map_bool; + + bytes32 public tE = hex"1337"; + address public tF = address(1337); + int256 public tG = type(int256).min; + bool public tH = true; + + constructor() { + basic = UnpackedStruct({ + a: 1337, + b: 1337 + }); + + uint256 two = (1<<128) | 1; + map_packed[msg.sender] = two; + map_packed[address(bytes20(uint160(1337)))] = 1<<128; + } + + function read_struct_upper(address who) public view returns (uint256) { + return map_packed[who] >> 128; + } + + function read_struct_lower(address who) public view returns (uint256) { + return map_packed[who] & ((1 << 128) - 1); + } + + function hidden() public view returns (bytes32 t) { + bytes32 slot = keccak256("my.random.var"); + /// @solidity memory-safe-assembly + assembly { + t := sload(slot) + } + } + + function const() public pure returns (bytes32 t) { + t = bytes32(hex"1337"); + } +} diff --git a/getting-started/foundry/lib/package.json b/getting-started/foundry/lib/package.json new file mode 100644 index 00000000..2e704ea1 --- /dev/null +++ b/getting-started/foundry/lib/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@eth-optimism/contracts": "^0.5.30" + } +} diff --git a/getting-started/foundry/lib/yarn.lock b/getting-started/foundry/lib/yarn.lock new file mode 100644 index 00000000..7a2ade36 --- /dev/null +++ b/getting-started/foundry/lib/yarn.lock @@ -0,0 +1,543 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@eth-optimism/contracts@^0.5.30": + version "0.5.30" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.30.tgz#855c3c0a47e7bab54c91459592312699947b71a0" + integrity sha512-mmB/PeK7ADcQVqLzT7NaDG9tpuPnv7WAF9fcqM8GLIGuVCcyPSWR3TE/MN0fAnQ2Vyffd84+YDjyBLmL1gKepA== + dependencies: + "@eth-optimism/core-utils" "0.9.1" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + +"@eth-optimism/core-utils@0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.1.tgz#6d011e0c272b5373828c239120b6e9fb0cf961c5" + integrity sha512-RhSoRCVGAPh2U9z9dEH6OBmva5vhdc49qncTFW+MV4dVQ963/vf4lYZEAnu2SOdy5F7EV4z0KkNMj0OlpEHxtw== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/providers" "^5.6.8" + "@ethersproject/transactions" "^5.6.2" + bufio "^1.0.7" + chai "^4.3.4" + ethers "^5.6.8" + +"@ethersproject/abi@5.6.4", "@ethersproject/abi@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.4.tgz#f6e01b6ed391a505932698ecc0d9e7a99ee60362" + integrity sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/abstract-provider@5.6.1", "@ethersproject/abstract-provider@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.1.tgz#02ddce150785caf0c77fe036a0ebfcee61878c59" + integrity sha512-BxlIgogYJtp1FS8Muvj8YfdClk3unZH0vRMVX791Z9INBNT/kuACZ9GzaY1Y4yFq+YSy6/w4gzj3HCRKrK9hsQ== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + +"@ethersproject/abstract-signer@5.6.2", "@ethersproject/abstract-signer@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.2.tgz#491f07fc2cbd5da258f46ec539664713950b0b33" + integrity sha512-n1r6lttFBG0t2vNiI3HoWaS/KdOt8xyDjzlP2cuevlWLG6EX0OwcKLyG/Kp/cuwNxdy/ous+R/DEMdTUwWQIjQ== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/address@5.6.1", "@ethersproject/address@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.1.tgz#ab57818d9aefee919c5721d28cd31fd95eff413d" + integrity sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + +"@ethersproject/base64@5.6.1", "@ethersproject/base64@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.1.tgz#2c40d8a0310c9d1606c2c37ae3092634b41d87cb" + integrity sha512-qB76rjop6a0RIYYMiB4Eh/8n+Hxu2NIZm8S/Q7kNo5pmZfXhHGHmS4MinUainiBC54SCyRnwzL+KZjj8zbsSsw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + +"@ethersproject/basex@5.6.1", "@ethersproject/basex@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.1.tgz#badbb2f1d4a6f52ce41c9064f01eab19cc4c5305" + integrity sha512-a52MkVz4vuBXR06nvflPMotld1FJWSj2QT0985v7P/emPZO00PucFAkbcmq2vpVU7Ts7umKiSI6SppiLykVWsA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/bignumber@5.6.2", "@ethersproject/bignumber@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.2.tgz#72a0717d6163fab44c47bcc82e0c550ac0315d66" + integrity sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" + integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/constants@5.6.1", "@ethersproject/constants@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.1.tgz#e2e974cac160dd101cf79fdf879d7d18e8cb1370" + integrity sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + +"@ethersproject/contracts@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.6.2.tgz#20b52e69ebc1b74274ff8e3d4e508de971c287bc" + integrity sha512-hguUA57BIKi6WY0kHvZp6PwPlWF87MCeB4B7Z7AbUpTxfFXFdn/3b0GmjZPagIHS+3yhcBJDnuEfU4Xz+Ks/8g== + dependencies: + "@ethersproject/abi" "^5.6.3" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + +"@ethersproject/hash@5.6.1", "@ethersproject/hash@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.1.tgz#224572ea4de257f05b4abf8ae58b03a67e99b0f4" + integrity sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/hdnode@5.6.2", "@ethersproject/hdnode@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.2.tgz#26f3c83a3e8f1b7985c15d1db50dc2903418b2d2" + integrity sha512-tERxW8Ccf9CxW2db3WsN01Qao3wFeRsfYY9TCuhmG0xNpl2IO8wgXU3HtWIZ49gUWPggRy4Yg5axU0ACaEKf1Q== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/json-wallets@5.6.1", "@ethersproject/json-wallets@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.1.tgz#3f06ba555c9c0d7da46756a12ac53483fe18dd91" + integrity sha512-KfyJ6Zwz3kGeX25nLihPwZYlDqamO6pfGKNnVMWWfEVVp42lTfCZVXXy5Ie8IZTN0HKwAngpIPi7gk4IJzgmqQ== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.6.1", "@ethersproject/keccak256@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.1.tgz#b867167c9b50ba1b1a92bccdd4f2d6bd168a91cc" + integrity sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" + integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== + +"@ethersproject/networks@5.6.4", "@ethersproject/networks@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.4.tgz#51296d8fec59e9627554f5a8a9c7791248c8dc07" + integrity sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/pbkdf2@5.6.1", "@ethersproject/pbkdf2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.1.tgz#f462fe320b22c0d6b1d72a9920a3963b09eb82d1" + integrity sha512-k4gRQ+D93zDRPNUfmduNKq065uadC2YjMP/CqwwX5qG6R05f47boq6pLZtV/RnC4NZAYOPH1Cyo54q0c9sshRQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + +"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/providers@5.6.8", "@ethersproject/providers@^5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.6.1", "@ethersproject/random@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.1.tgz#66915943981bcd3e11bbd43733f5c3ba5a790255" + integrity sha512-/wtPNHwbmng+5yi3fkipA8YBT59DdkGRoC2vWk09Dci/q5DlgnMkhIycjHlavrvrjJBkFjO/ueLyT+aUDfc4lA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/rlp@5.6.1", "@ethersproject/rlp@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.1.tgz#df8311e6f9f24dcb03d59a2bac457a28a4fe2bd8" + integrity sha512-uYjmcZx+DKlFUk7a5/W9aQVaoEC7+1MOBgNtvNg13+RnuUwT4F0zTovC0tmay5SmRslb29V1B7Y5KCri46WhuQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/sha2@5.6.1", "@ethersproject/sha2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.1.tgz#211f14d3f5da5301c8972a8827770b6fd3e51656" + integrity sha512-5K2GyqcW7G4Yo3uenHegbXRPDgARpWUiXc6RiF7b6i/HXUoWlb7uCARh7BAHg7/qT/Q5ydofNwiZcim9qpjB6g== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.6.2", "@ethersproject/signing-key@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.2.tgz#8a51b111e4d62e5a62aee1da1e088d12de0614a3" + integrity sha512-jVbu0RuP7EFpw82vHcL+GP35+KaNruVAZM90GxgQnGqB6crhBqW/ozBfFvdeImtmb4qPko0uxXjn8l9jpn0cwQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.6.1.tgz#5845e71182c66d32e6ec5eefd041fca091a473e2" + integrity sha512-KWqVLkUUoLBfL1iwdzUVlkNqAUIFMpbbeH0rgCfKmJp0vFtY4AsaN91gHKo9ZZLkC4UOm3cI3BmMV4N53BOq4g== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/strings@5.6.1", "@ethersproject/strings@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.1.tgz#dbc1b7f901db822b5cafd4ebf01ca93c373f8952" + integrity sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/transactions@5.6.2", "@ethersproject/transactions@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.2.tgz#793a774c01ced9fe7073985bb95a4b4e57a6370b" + integrity sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + +"@ethersproject/units@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.6.1.tgz#ecc590d16d37c8f9ef4e89e2005bda7ddc6a4e6f" + integrity sha512-rEfSEvMQ7obcx3KWD5EWWx77gqv54K6BKiZzKxkQJqtpriVsICrktIQmKl8ReNToPeIYPnFHpXvKpi068YFZXw== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/web@5.6.1", "@ethersproject/web@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.1.tgz#6e2bd3ebadd033e6fe57d072db2b69ad2c9bdf5d" + integrity sha512-/vSyzaQlNXkO1WV+RneYKqCJwualcUdx/Z3gseVovZP0wIlOFcCE1hkRhKBH8ImKbGQbMl9EAAyJFrJu7V0aqA== + dependencies: + "@ethersproject/base64" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/wordlists@5.6.1", "@ethersproject/wordlists@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.1.tgz#1e78e2740a8a21e9e99947e47979d72e130aeda1" + integrity sha512-wiPRgBpNbNwCQFoCr8bcWO8o5I810cqO6mkdtKfLKFlLxeCWcnzDi4Alu8iyNzlhYuS9npCwivMbRWF19dyblw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +bufio@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/bufio/-/bufio-1.0.7.tgz#b7f63a1369a0829ed64cc14edf0573b3e382a33e" + integrity sha512-bd1dDQhiC+bEbEfg56IdBv7faWa6OipMs/AFFFvtFnB3wAYjlwQpQRZ0pm6ZkgtfL0pILRXhKxOiQj6UzoMR7A== + +chai@^4.3.4: + version "4.3.6" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.6.tgz#ffe4ba2d9fa9d6680cc0b370adae709ec9011e9c" + integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.2" + deep-eql "^3.0.1" + get-func-name "^2.0.0" + loupe "^2.3.1" + pathval "^1.1.1" + type-detect "^4.0.5" + +check-error@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA== + +deep-eql@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== + dependencies: + type-detect "^4.0.0" + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +ethers@^5.6.8: + version "5.6.9" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.9.tgz#4e12f8dfcb67b88ae7a78a9519b384c23c576a4d" + integrity sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA== + dependencies: + "@ethersproject/abi" "5.6.4" + "@ethersproject/abstract-provider" "5.6.1" + "@ethersproject/abstract-signer" "5.6.2" + "@ethersproject/address" "5.6.1" + "@ethersproject/base64" "5.6.1" + "@ethersproject/basex" "5.6.1" + "@ethersproject/bignumber" "5.6.2" + "@ethersproject/bytes" "5.6.1" + "@ethersproject/constants" "5.6.1" + "@ethersproject/contracts" "5.6.2" + "@ethersproject/hash" "5.6.1" + "@ethersproject/hdnode" "5.6.2" + "@ethersproject/json-wallets" "5.6.1" + "@ethersproject/keccak256" "5.6.1" + "@ethersproject/logger" "5.6.0" + "@ethersproject/networks" "5.6.4" + "@ethersproject/pbkdf2" "5.6.1" + "@ethersproject/properties" "5.6.0" + "@ethersproject/providers" "5.6.8" + "@ethersproject/random" "5.6.1" + "@ethersproject/rlp" "5.6.1" + "@ethersproject/sha2" "5.6.1" + "@ethersproject/signing-key" "5.6.2" + "@ethersproject/solidity" "5.6.1" + "@ethersproject/strings" "5.6.1" + "@ethersproject/transactions" "5.6.2" + "@ethersproject/units" "5.6.1" + "@ethersproject/wallet" "5.6.2" + "@ethersproject/web" "5.6.1" + "@ethersproject/wordlists" "5.6.1" + +get-func-name@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" + integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig== + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +inherits@^2.0.3, inherits@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +loupe@^2.3.1: + version "2.3.4" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.4.tgz#7e0b9bffc76f148f9be769cb1321d3dcf3cb25f3" + integrity sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ== + dependencies: + get-func-name "^2.0.0" + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +type-detect@^4.0.0, type-detect@^4.0.5: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== diff --git a/getting-started/foundry/out/Contract.s.sol/ContractScript.json b/getting-started/foundry/out/Contract.s.sol/ContractScript.json new file mode 100644 index 00000000..c436deb5 --- /dev/null +++ b/getting-started/foundry/out/Contract.s.sol/ContractScript.json @@ -0,0 +1,261 @@ +{ + "abi": [ + { + "inputs": [], + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "run", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setUp", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vm", + "outputs": [ + { + "internalType": "contract Vm", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b5061014c8061002d6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630a9254e4146100515780633a76846314610053578063c04062261461008b578063f8ccbf4714610093575b600080fd5b005b61006e737109709ecfa91a80626ff3989d68f67f5b1dd12d81565b6040516001600160a01b0390911681526020015b60405180910390f35b6100516100b0565b6000546100a09060ff1681565b6040519015158152602001610082565b604080516302bf260160e61b81529051737109709ecfa91a80626ff3989d68f67f5b1dd12d9163afc9804091600480830192600092919082900301818387803b1580156100fc57600080fd5b505af1158015610110573d6000803e3d6000fd5b5050505056fea26469706673582212200e6baed3d07303525b12abdfe2765246321592a7bc87e6e230711e42161b51d364736f6c634300080d0033", + "sourceMap": "97:127:6:-:0;;;171:28:1;;;-1:-1:-1;;171:28:1;195:4;171:28;;;97:127:6;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80630a9254e4146100515780633a76846314610053578063c04062261461008b578063f8ccbf4714610093575b600080fd5b005b61006e737109709ecfa91a80626ff3989d68f67f5b1dd12d81565b6040516001600160a01b0390911681526020015b60405180910390f35b6100516100b0565b6000546100a09060ff1681565b6040519015158152602001610082565b604080516302bf260160e61b81529051737109709ecfa91a80626ff3989d68f67f5b1dd12d9163afc9804091600480830192600092919082900301818387803b1580156100fc57600080fd5b505af1158015610110573d6000803e3d6000fd5b5050505056fea26469706673582212200e6baed3d07303525b12abdfe2765246321592a7bc87e6e230711e42161b51d364736f6c634300080d0033", + "sourceMap": "97:127:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;137:26;;322:38:1;;251:64;322:38;;;;;-1:-1:-1;;;;;189:32:9;;;171:51;;159:2;144:18;322:38:1;;;;;;;;169:53:6;;;:::i;171:28:1:-;;;;;;;;;;;;398:14:9;;391:22;373:41;;361:2;346:18;171:28:1;233:187:9;169:53:6;201:14;;;-1:-1:-1;;;201:14:6;;;;251:64:1;;201:12:6;;:14;;;;;275:37:1;;201:14:6;;;;;;;275:37:1;251:64;201:14:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;169:53::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_SCRIPT()": "f8ccbf47", + "run()": "c0406226", + "setUp()": "0a9254e4", + "vm()": "3a768463" + }, + "ast": { + "absolutePath": "script/Contract.s.sol", + "id": 21112, + "exportedSymbols": { + "ContractScript": [ + 21111 + ], + "Script": [ + 1818 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ] + }, + "nodeType": "SourceUnit", + "src": "39:186:6", + "nodes": [ + { + "id": 21094, + "nodeType": "PragmaDirective", + "src": "39:24:6", + "literals": [ + "solidity", + "^", + "0.8", + ".13" + ] + }, + { + "id": 21095, + "nodeType": "ImportDirective", + "src": "65:30:6", + "absolutePath": "lib/forge-std/src/Script.sol", + "file": "forge-std/Script.sol", + "nameLocation": "-1:-1:-1", + "scope": 21112, + "sourceUnit": 1819, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21111, + "nodeType": "ContractDefinition", + "src": "97:127:6", + "nodes": [ + { + "id": 21101, + "nodeType": "FunctionDefinition", + "src": "137:26:6", + "body": { + "id": 21100, + "nodeType": "Block", + "src": "161:2:6", + "statements": [] + }, + "functionSelector": "0a9254e4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setUp", + "nameLocation": "146:5:6", + "parameters": { + "id": 21098, + "nodeType": "ParameterList", + "parameters": [], + "src": "151:2:6" + }, + "returnParameters": { + "id": 21099, + "nodeType": "ParameterList", + "parameters": [], + "src": "161:0:6" + }, + "scope": 21111, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21110, + "nodeType": "FunctionDefinition", + "src": "169:53:6", + "body": { + "id": 21109, + "nodeType": "Block", + "src": "191:31:6", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 21104, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "201:2:6", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 21106, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "broadcast", + "nodeType": "MemberAccess", + "referencedDeclaration": 4857, + "src": "201:12:6", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 21107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "201:14:6", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21108, + "nodeType": "ExpressionStatement", + "src": "201:14:6" + } + ] + }, + "functionSelector": "c0406226", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "run", + "nameLocation": "178:3:6", + "parameters": { + "id": 21102, + "nodeType": "ParameterList", + "parameters": [], + "src": "181:2:6" + }, + "returnParameters": { + "id": 21103, + "nodeType": "ParameterList", + "parameters": [], + "src": "191:0:6" + }, + "scope": 21111, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 21096, + "name": "Script", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1818, + "src": "124:6:6" + }, + "id": 21097, + "nodeType": "InheritanceSpecifier", + "src": "124:6:6" + } + ], + "canonicalName": "ContractScript", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21111, + 1818 + ], + "name": "ContractScript", + "nameLocation": "106:14:6", + "scope": 21112, + "usedErrors": [] + } + ], + "license": "UNLICENSED" + }, + "id": 6 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Contract.sol/Contract.json b/getting-started/foundry/out/Contract.sol/Contract.json new file mode 100644 index 00000000..1bf96081 --- /dev/null +++ b/getting-started/foundry/out/Contract.sol/Contract.json @@ -0,0 +1,58 @@ +{ + "abi": [], + "bytecode": { + "object": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220db1cfba864fd803bdb4111ababe82a259e9c2ef78d608dc3c85c501891b7529864736f6c634300080d0033", + "sourceMap": "65:20:7:-:0;;;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x6080604052600080fdfea2646970667358221220db1cfba864fd803bdb4111ababe82a259e9c2ef78d608dc3c85c501891b7529864736f6c634300080d0033", + "sourceMap": "65:20:7:-:0;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "src/Contract.sol", + "id": 21115, + "exportedSymbols": { + "Contract": [ + 21114 + ] + }, + "nodeType": "SourceUnit", + "src": "39:47:7", + "nodes": [ + { + "id": 21113, + "nodeType": "PragmaDirective", + "src": "39:24:7", + "literals": [ + "solidity", + "^", + "0.8", + ".13" + ] + }, + { + "id": 21114, + "nodeType": "ContractDefinition", + "src": "65:20:7", + "abstract": false, + "baseContracts": [], + "canonicalName": "Contract", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21114 + ], + "name": "Contract", + "nameLocation": "74:8:7", + "scope": 21115, + "usedErrors": [] + } + ], + "license": "UNLICENSED" + }, + "id": 7 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Contract.t.sol/ContractTest.json b/getting-started/foundry/out/Contract.t.sol/ContractTest.json new file mode 100644 index 00000000..a1571b34 --- /dev/null +++ b/getting-started/foundry/out/Contract.t.sol/ContractTest.json @@ -0,0 +1,1004 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "log_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "log_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "log_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "log_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "val", + "type": "address" + } + ], + "name": "log_named_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "val", + "type": "bytes" + } + ], + "name": "log_named_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "val", + "type": "bytes32" + } + ], + "name": "log_named_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + } + ], + "name": "log_named_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "val", + "type": "string" + } + ], + "name": "log_named_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + } + ], + "name": "log_named_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "log_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "logs", + "type": "event" + }, + { + "inputs": [], + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "adjust", + "type": "bool" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + }, + { + "internalType": "bytes", + "name": "args", + "type": "bytes" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "rewind", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setUp", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "skip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "testExample", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "tip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vm", + "outputs": [ + { + "internalType": "contract Vm", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040526000805462ff00ff19166201000117905534801561002157600080fd5b506129c5806100316000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806397754ae9116100b8578063c88a5e6d1161007c578063c88a5e6d1461027f578063d06d822914610292578063d82555f1146102a5578063e9a79a7b146102b8578063f8ccbf47146102cb578063fa7626d4146102de57600080fd5b806397754ae91461021b5780639a8325a01461022e578063af9bbe5f14610241578063b9c071b414610254578063ba414fa61461026757600080fd5b80632d6c17a31161010a5780632d6c17a3146101b25780633a768463146101c55780633bf82db1146101da5780633f5a4a2a146101ed5780636bce989b146101f55780636f5970751461020857600080fd5b80630a9254e414610147578063108554f214610149578063233240ee1461015c57806329a9e3001461016f57806329ce9dde14610182575b600080fd5b005b610147610157366004612264565b6102ed565b61014761016a36600461228e565b6103be565b61014761017d3660046122b0565b610492565b6101956101903660046123b0565b61053d565b6040516001600160a01b0390911681526020015b60405180910390f35b6101476101c0366004612428565b610664565b61019560008051602061295083398151915281565b6101476101e8366004612441565b6106a0565b61014761077a565b610147610203366004612441565b610784565b61014761021636600461228e565b610796565b61014761022936600461248b565b610839565b61019561023c3660046124da565b610a59565b61014761024f366004612441565b610b53565b610147610262366004612428565b610bfa565b61026f610c18565b60405190151581526020016101a9565b61014761028d366004612264565b610d3b565b6101476102a03660046122b0565b610d6e565b6101476102b3366004612441565b610e19565b6101476102c6366004612264565b610f0a565b60005461026f9062010000900460ff1681565b60005461026f9060ff1681565b565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103209085908590600401612517565b600060405180830381600087803b15801561033a57600080fd5b505af115801561034e573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b038516600482015260008051602061295083398151915292506306447d5691506024015b600060405180830381600087803b1580156103a257600080fd5b505af11580156103b6573d6000803e3d6000fd5b505050505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103f5908490600160801b90600401612517565b600060405180830381600087803b15801561040f57600080fd5b505af1158015610423573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0384166004820152600080516020612950833981519152925063ca669fa791506024015b600060405180830381600087803b15801561047757600080fd5b505af115801561048b573d6000803e3d6000fd5b5050505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906104c9908590600160801b90600401612517565b600060405180830381600087803b1580156104e357600080fd5b505af11580156104f7573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b0380861660048301528416602482015260008051602061295083398151915292506347e50cce9150604401610388565b604051638d1cc92560e01b8152600090819060008051602061295083398151915290638d1cc92590610573908790600401612560565b6000604051808303816000875af1158015610592573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105ba9190810190612593565b836040516020016105cc92919061260a565b60405160208183030381529060405290508051602082016000f091506001600160a01b03821661065d5760405162461bcd60e51b815260206004820152603160248201527f54657374206465706c6f79436f646528737472696e672c6279746573293a204460448201527032b83637bcb6b2b73a103330b4b632b21760791b60648201526084015b60405180910390fd5b5092915050565b60008051602061295083398151915263e5d6bf02610682834261264f565b6040518263ffffffff1660e01b815260040161045d91815260200190565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906106d39086908590600401612517565b600060405180830381600087803b1580156106ed57600080fd5b505af1158015610701573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b0380871660048301528516602482015260008051602061295083398151915292506345b5607891506044015b600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b50505050505050565b6102eb6001610fa9565b6107918383836000610839565b505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906107cd908490600160801b90600401612517565b600060405180830381600087803b1580156107e757600080fd5b505af11580156107fb573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b038416600482015260008051602061295083398151915292506306447d56915060240161045d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b179052915160009287169161088d91612666565b6000604051808303816000865af19150503d80600081146108ca576040519150601f19603f3d011682016040523d82523d6000602084013e6108cf565b606091505b509150506000818060200190518101906108e99190612682565b90506109558461094f876109266370a0823160e01b61090960018d611020565b9060038201805463ffffffff191660e09290921c91909117905590565b90600282018054600181018255600091825260209091206001600160a01b039290921691015590565b90611045565b82156103b65760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169161099d9190612666565b6000604051808303816000865af19150503d80600081146109da576040519150601f19603f3d011682016040523d82523d6000602084013e6109df565b606091505b509150506000818060200190518101906109f99190612682565b905082861015610a1e57610a0d868461264f565b610a17908261264f565b9050610a35565b610a28838761264f565b610a32908261269b565b90505b610a4f8161094f6318160ddd60e01b61090960018d611020565b5050505050505050565b604051638d1cc92560e01b8152600090819060008051602061295083398151915290638d1cc92590610a8f908690600401612560565b6000604051808303816000875af1158015610aae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ad69190810190612593565b90508051602082016000f091506001600160a01b038216610b4d5760405162461bcd60e51b815260206004820152602b60248201527f54657374206465706c6f79436f646528737472696e67293a204465706c6f796d60448201526a32b73a103330b4b632b21760a91b6064820152608401610654565b50919050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610b869086908590600401612517565b600060405180830381600087803b158015610ba057600080fd5b505af1158015610bb4573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b0380871660048301528516602482015260008051602061295083398151915292506347e50cce9150604401610743565b60008051602061295083398151915263e5d6bf02610682834261269b565b60008054610100900460ff1615610c385750600054610100900460ff1690565b60006000805160206129508339815191523b15610d3657604051600090600080516020612950833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490610ca09083906519985a5b195960d21b90602001612517565b60408051601f1981840301815290829052610cbe92916020016126b3565b60408051601f1981840301815290829052610cd891612666565b6000604051808303816000865af19150503d8060008114610d15576040519150601f19603f3d011682016040523d82523d6000602084013e610d1a565b606091505b5091505080806020019051810190610d3291906126e4565b9150505b919050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103889085908590600401612517565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610da5908590600160801b90600401612517565b600060405180830381600087803b158015610dbf57600080fd5b505af1158015610dd3573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b0380861660048301528416602482015260008051602061295083398151915292506345b560789150604401610388565b7f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583604051610ee4906040808252600790820152665741524e494e4760c81b6060820152608060208201819052605e908201527f546573742074697028616464726573732c616464726573732c75696e7432353660a08201527f293a2054686520607469706020737464636865617420686173206265656e206460c08201527f6570726563617465642e2055736520606465616c6020696e73746561642e000060e08201526101000190565b60405180910390a16107918161094f846109266370a0823160e01b61090960018a611020565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610f3d9085908590600401612517565b600060405180830381600087803b158015610f5757600080fd5b505af1158015610f6b573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0385166004820152600080516020612950833981519152925063ca669fa79150602401610388565b8061101d577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405161100d9060208082526017908201527f4572726f723a20417373657274696f6e204661696c6564000000000000000000604082015260600190565b60405180910390a161101d611053565b50565b6005820180546001600160a01b0319166001600160a01b039290921691909117905590565b61104f828261114c565b5050565b6000805160206129508339815191523b1561113b57604051600090600080516020612950833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4906110bc9083906519985a5b195960d21b90600190602001612701565b60408051601f19818403018152908290526110da92916020016126b3565b60408051601f19818403018152908290526110f491612666565b6000604051808303816000865af19150503d8060008114611131576040519150601f19603f3d011682016040523d82523d6000602084013e611136565b606091505b505050505b6000805461ff001916610100179055565b600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b94600093909290918301828280156111bd57602002820191906000526020600020905b8154815260200190600101908083116111a9575b505050505090506000836111d083611490565b6040516020016111e19291906126b3565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a168352815292812091945090929091611233918691889101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1661126b5761126987611530565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b03198816845282528083209051909183916112aa918791899101612722565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b0316846040516112ef9190612666565b600060405180830381855afa9150503d806000811461132a576040519150601f19603f3d011682016040523d82523d6000602084013e61132f565b606091505b50915061134890508161134388602061275c565b61219e565b604051630667f9d760e41b8152909250600091506000805160206129508339815191529063667f9d7090611382908b908790600401612517565b6020604051808303816000875af11580156113a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c59190612682565b90508082146113e65760405162461bcd60e51b81526004016106549061277b565b6040516370ca10bb60e01b8152600080516020612950833981519152906370ca10bb9061141b908b9087908e90600401612701565b600060405180830381600087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905561147c60028b01600061221b565b896004016000905550505050505050505050565b60606000825160206114a2919061275c565b67ffffffffffffffff8111156114ba576114ba6122e3565b6040519080825280601f01601f1916602001820160405280156114e4576020820181803683370190505b50905060005b835181101561065d57600084828151811061150757611507612816565b6020026020010151905080826020026020018401525080806115289061282c565b9150506114ea565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156115a057602002820191906000526020600020905b81548152602001906001019080831161158c575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a16845282528083209051959650949193506115ea92508591879101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615611686576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291611656918591879101612722565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008361169283611490565b6040516020016116a39291906126b3565b604051602081830303815290604052905060008051602061297083398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561170057600080fd5b505af1158015611714573d6000803e3d6000fd5b50505050600080866001600160a01b0316836040516117339190612666565b600060405180830381855afa9150503d806000811461176e576040519150601f19603f3d011682016040523d82523d6000602084013e611773565b606091505b50915061178790508161134387602061275c565b6040516365bc948160e01b81526001600160a01b038916600482015290925060009150600080516020612950833981519152906365bc9481906024016000604051808303816000875af11580156117e2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261180a91908101906128c5565b5090508051600103611ab157600060008051602061297083398151915260001c6001600160a01b031663667f9d70898460008151811061184c5761184c612816565b60200260200101516040518363ffffffff1660e01b8152600401611871929190612517565b6020604051808303816000875af1158015611890573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b49190612682565b905080611912577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a588836000815181106118f0576118f0612816565b602002602001015160001c604051611909929190612517565b60405180910390a15b8083146119315760405162461bcd60e51b81526004016106549061277b565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed88888789604051602001611967929190612722565b604051602081830303815290604052805190602001208560008151811061199057611990612816565b602002602001015160001c6040516119ab949392919061291f565b60405180910390a1816000815181106119c6576119c6612816565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c1683528452808220905192939092611a0f918a918c9101612722565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c16855282528284209251909391611a77918a918c9101612722565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff191691151591909117905550612029565b600181511115611fb95760005b8151811015611fb357600060008051602061297083398151915260001c6001600160a01b031663667f9d708a858581518110611afc57611afc612816565b60200260200101516040518363ffffffff1660e01b8152600401611b21929190612517565b6020604051808303816000875af1158015611b40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b649190612682565b905080611bc1577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110611b9f57611b9f612816565b602002602001015160001c604051611bb8929190612517565b60405180910390a15b60008051602061297083398151915260001c6001600160a01b03166370ca10bb8a858581518110611bf457611bf4612816565b602002602001015161133760f01b6040518463ffffffff1660e01b8152600401611c2093929190612701565b600060405180830381600087803b158015611c3a57600080fd5b505af1158015611c4e573d6000803e3d6000fd5b50505050600060608a6001600160a01b031687604051611c6e9190612666565b600060405180830381855afa9150503d8060008114611ca9576040519150601f19603f3d011682016040523d82523d6000602084013e611cae565b606091505b509092509050611cc3816113438b602061275c565b9550818015611cd6575061133760f01b86145b15611f11577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001611d11929190612722565b60405160208183030381529060405280519060200120888881518110611d3957611d39612816565b602002602001015160001c604051611d54949392919061291f565b60405180910390a1848481518110611d6e57611d6e612816565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092611db7918d918f9101612722565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001611e42929190612722565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff02191690831515021790555060008051602061297083398151915260001c6001600160a01b03166370ca10bb8c878781518110611eb057611eb0612816565b6020026020010151866040518463ffffffff1660e01b8152600401611ed793929190612701565b600060405180830381600087803b158015611ef157600080fd5b505af1158015611f05573d6000803e3d6000fd5b50505050505050611fb3565b60008051602061297083398151915260001c6001600160a01b03166370ca10bb8c878781518110611f4457611f44612816565b6020026020010151866040518463ffffffff1660e01b8152600401611f6b93929190612701565b600060405180830381600087803b158015611f8557600080fd5b505af1158015611f99573d6000803e3d6000fd5b505050505050508080611fab9061282c565b915050611abe565b50612029565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e6064820152608401610654565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929161206b9188918a9101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff166120f85760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b6064820152608401610654565b6005890180546001600160a01b031916905560038901805463ffffffff1916905561212760028a01600061221b565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929161216b9188918a9101612722565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b600080600060208551116121b35784516121b6565b60205b905060005b81811015612211576121ce81600861275c565b866121d9838861269b565b815181106121e9576121e9612816565b01602001516001600160f81b031916901c9290921791806122098161282c565b9150506121bb565b5090949350505050565b508054600082559060005260206000209081019061101d91905b808211156122495760008155600101612235565b5090565b80356001600160a01b0381168114610d3657600080fd5b6000806040838503121561227757600080fd5b6122808361224d565b946020939093013593505050565b6000602082840312156122a057600080fd5b6122a98261224d565b9392505050565b600080604083850312156122c357600080fd5b6122cc8361224d565b91506122da6020840161224d565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612322576123226122e3565b604052919050565b600067ffffffffffffffff821115612344576123446122e3565b50601f01601f191660200190565b60006123656123608461232a565b6122f9565b905082815283838301111561237957600080fd5b828260208301376000602084830101529392505050565b600082601f8301126123a157600080fd5b6122a983833560208501612352565b600080604083850312156123c357600080fd5b823567ffffffffffffffff808211156123db57600080fd5b6123e786838701612390565b935060208501359150808211156123fd57600080fd5b508301601f8101851361240f57600080fd5b61241e85823560208401612352565b9150509250929050565b60006020828403121561243a57600080fd5b5035919050565b60008060006060848603121561245657600080fd5b61245f8461224d565b925061246d6020850161224d565b9150604084013590509250925092565b801515811461101d57600080fd5b600080600080608085870312156124a157600080fd5b6124aa8561224d565b93506124b86020860161224d565b92506040850135915060608501356124cf8161247d565b939692955090935050565b6000602082840312156124ec57600080fd5b813567ffffffffffffffff81111561250357600080fd5b61250f84828501612390565b949350505050565b6001600160a01b03929092168252602082015260400190565b60005b8381101561254b578181015183820152602001612533565b8381111561255a576000848401525b50505050565b602081526000825180602084015261257f816040850160208701612530565b601f01601f19169190910160400192915050565b6000602082840312156125a557600080fd5b815167ffffffffffffffff8111156125bc57600080fd5b8201601f810184136125cd57600080fd5b80516125db6123608261232a565b8181528560208385010111156125f057600080fd5b612601826020830160208601612530565b95945050505050565b6000835161261c818460208801612530565b835190830190612630818360208801612530565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561266157612661612639565b500390565b60008251612678818460208701612530565b9190910192915050565b60006020828403121561269457600080fd5b5051919050565b600082198211156126ae576126ae612639565b500190565b6001600160e01b03198316815281516000906126d6816004850160208701612530565b919091016004019392505050565b6000602082840312156126f657600080fd5b81516122a98161247d565b6001600160a01b039390931683526020830191909152604082015260600190565b825160009082906020808701845b8381101561274c57815185529382019390820190600101612730565b5050948252509092019392505050565b600081600019048311821515161561277657612776612639565b500290565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b634e487b7160e01b600052603260045260246000fd5b60006001820161283e5761283e612639565b5060010190565b600082601f83011261285657600080fd5b8151602067ffffffffffffffff821115612872576128726122e3565b8160051b6128818282016122f9565b928352848101820192828101908785111561289b57600080fd5b83870192505b848310156128ba578251825291830191908301906128a1565b979650505050505050565b600080604083850312156128d857600080fd5b825167ffffffffffffffff808211156128f057600080fd5b6128fc86838701612845565b9350602085015191508082111561291257600080fd5b5061241e85828601612845565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12da2646970667358221220d6ff5e3313e3ce24fd3544f0dd3b7b03fc27d3fe9c0f727ccf288733ca76654b64736f6c634300080d0033", + "sourceMap": "95:133:8:-:0;;;1572:26:0;;;-1:-1:-1;;171:28:1;;;;;95:133:8;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b50600436106101425760003560e01c806397754ae9116100b8578063c88a5e6d1161007c578063c88a5e6d1461027f578063d06d822914610292578063d82555f1146102a5578063e9a79a7b146102b8578063f8ccbf47146102cb578063fa7626d4146102de57600080fd5b806397754ae91461021b5780639a8325a01461022e578063af9bbe5f14610241578063b9c071b414610254578063ba414fa61461026757600080fd5b80632d6c17a31161010a5780632d6c17a3146101b25780633a768463146101c55780633bf82db1146101da5780633f5a4a2a146101ed5780636bce989b146101f55780636f5970751461020857600080fd5b80630a9254e414610147578063108554f214610149578063233240ee1461015c57806329a9e3001461016f57806329ce9dde14610182575b600080fd5b005b610147610157366004612264565b6102ed565b61014761016a36600461228e565b6103be565b61014761017d3660046122b0565b610492565b6101956101903660046123b0565b61053d565b6040516001600160a01b0390911681526020015b60405180910390f35b6101476101c0366004612428565b610664565b61019560008051602061295083398151915281565b6101476101e8366004612441565b6106a0565b61014761077a565b610147610203366004612441565b610784565b61014761021636600461228e565b610796565b61014761022936600461248b565b610839565b61019561023c3660046124da565b610a59565b61014761024f366004612441565b610b53565b610147610262366004612428565b610bfa565b61026f610c18565b60405190151581526020016101a9565b61014761028d366004612264565b610d3b565b6101476102a03660046122b0565b610d6e565b6101476102b3366004612441565b610e19565b6101476102c6366004612264565b610f0a565b60005461026f9062010000900460ff1681565b60005461026f9060ff1681565b565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103209085908590600401612517565b600060405180830381600087803b15801561033a57600080fd5b505af115801561034e573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b038516600482015260008051602061295083398151915292506306447d5691506024015b600060405180830381600087803b1580156103a257600080fd5b505af11580156103b6573d6000803e3d6000fd5b505050505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103f5908490600160801b90600401612517565b600060405180830381600087803b15801561040f57600080fd5b505af1158015610423573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0384166004820152600080516020612950833981519152925063ca669fa791506024015b600060405180830381600087803b15801561047757600080fd5b505af115801561048b573d6000803e3d6000fd5b5050505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906104c9908590600160801b90600401612517565b600060405180830381600087803b1580156104e357600080fd5b505af11580156104f7573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b0380861660048301528416602482015260008051602061295083398151915292506347e50cce9150604401610388565b604051638d1cc92560e01b8152600090819060008051602061295083398151915290638d1cc92590610573908790600401612560565b6000604051808303816000875af1158015610592573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105ba9190810190612593565b836040516020016105cc92919061260a565b60405160208183030381529060405290508051602082016000f091506001600160a01b03821661065d5760405162461bcd60e51b815260206004820152603160248201527f54657374206465706c6f79436f646528737472696e672c6279746573293a204460448201527032b83637bcb6b2b73a103330b4b632b21760791b60648201526084015b60405180910390fd5b5092915050565b60008051602061295083398151915263e5d6bf02610682834261264f565b6040518263ffffffff1660e01b815260040161045d91815260200190565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906106d39086908590600401612517565b600060405180830381600087803b1580156106ed57600080fd5b505af1158015610701573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b0380871660048301528516602482015260008051602061295083398151915292506345b5607891506044015b600060405180830381600087803b15801561075d57600080fd5b505af1158015610771573d6000803e3d6000fd5b50505050505050565b6102eb6001610fa9565b6107918383836000610839565b505050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906107cd908490600160801b90600401612517565b600060405180830381600087803b1580156107e757600080fd5b505af11580156107fb573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b038416600482015260008051602061295083398151915292506306447d56915060240161045d565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b179052915160009287169161088d91612666565b6000604051808303816000865af19150503d80600081146108ca576040519150601f19603f3d011682016040523d82523d6000602084013e6108cf565b606091505b509150506000818060200190518101906108e99190612682565b90506109558461094f876109266370a0823160e01b61090960018d611020565b9060038201805463ffffffff191660e09290921c91909117905590565b90600282018054600181018255600091825260209091206001600160a01b039290921691015590565b90611045565b82156103b65760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169161099d9190612666565b6000604051808303816000865af19150503d80600081146109da576040519150601f19603f3d011682016040523d82523d6000602084013e6109df565b606091505b509150506000818060200190518101906109f99190612682565b905082861015610a1e57610a0d868461264f565b610a17908261264f565b9050610a35565b610a28838761264f565b610a32908261269b565b90505b610a4f8161094f6318160ddd60e01b61090960018d611020565b5050505050505050565b604051638d1cc92560e01b8152600090819060008051602061295083398151915290638d1cc92590610a8f908690600401612560565b6000604051808303816000875af1158015610aae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ad69190810190612593565b90508051602082016000f091506001600160a01b038216610b4d5760405162461bcd60e51b815260206004820152602b60248201527f54657374206465706c6f79436f646528737472696e67293a204465706c6f796d60448201526a32b73a103330b4b632b21760a91b6064820152608401610654565b50919050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610b869086908590600401612517565b600060405180830381600087803b158015610ba057600080fd5b505af1158015610bb4573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b0380871660048301528516602482015260008051602061295083398151915292506347e50cce9150604401610743565b60008051602061295083398151915263e5d6bf02610682834261269b565b60008054610100900460ff1615610c385750600054610100900460ff1690565b60006000805160206129508339815191523b15610d3657604051600090600080516020612950833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc490610ca09083906519985a5b195960d21b90602001612517565b60408051601f1981840301815290829052610cbe92916020016126b3565b60408051601f1981840301815290829052610cd891612666565b6000604051808303816000865af19150503d8060008114610d15576040519150601f19603f3d011682016040523d82523d6000602084013e610d1a565b606091505b5091505080806020019051810190610d3291906126e4565b9150505b919050565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d906103889085908590600401612517565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610da5908590600160801b90600401612517565b600060405180830381600087803b158015610dbf57600080fd5b505af1158015610dd3573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b0380861660048301528416602482015260008051602061295083398151915292506345b560789150604401610388565b7f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583604051610ee4906040808252600790820152665741524e494e4760c81b6060820152608060208201819052605e908201527f546573742074697028616464726573732c616464726573732c75696e7432353660a08201527f293a2054686520607469706020737464636865617420686173206265656e206460c08201527f6570726563617465642e2055736520606465616c6020696e73746561642e000060e08201526101000190565b60405180910390a16107918161094f846109266370a0823160e01b61090960018a611020565b60405163c88a5e6d60e01b81526000805160206129508339815191529063c88a5e6d90610f3d9085908590600401612517565b600060405180830381600087803b158015610f5757600080fd5b505af1158015610f6b573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0385166004820152600080516020612950833981519152925063ca669fa79150602401610388565b8061101d577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f5060405161100d9060208082526017908201527f4572726f723a20417373657274696f6e204661696c6564000000000000000000604082015260600190565b60405180910390a161101d611053565b50565b6005820180546001600160a01b0319166001600160a01b039290921691909117905590565b61104f828261114c565b5050565b6000805160206129508339815191523b1561113b57604051600090600080516020612950833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4906110bc9083906519985a5b195960d21b90600190602001612701565b60408051601f19818403018152908290526110da92916020016126b3565b60408051601f19818403018152908290526110f491612666565b6000604051808303816000865af19150503d8060008114611131576040519150601f19603f3d011682016040523d82523d6000602084013e611136565b606091505b505050505b6000805461ff001916610100179055565b600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b94600093909290918301828280156111bd57602002820191906000526020600020905b8154815260200190600101908083116111a9575b505050505090506000836111d083611490565b6040516020016111e19291906126b3565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a168352815292812091945090929091611233918691889101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1661126b5761126987611530565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b03198816845282528083209051909183916112aa918791899101612722565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b0316846040516112ef9190612666565b600060405180830381855afa9150503d806000811461132a576040519150601f19603f3d011682016040523d82523d6000602084013e61132f565b606091505b50915061134890508161134388602061275c565b61219e565b604051630667f9d760e41b8152909250600091506000805160206129508339815191529063667f9d7090611382908b908790600401612517565b6020604051808303816000875af11580156113a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c59190612682565b90508082146113e65760405162461bcd60e51b81526004016106549061277b565b6040516370ca10bb60e01b8152600080516020612950833981519152906370ca10bb9061141b908b9087908e90600401612701565b600060405180830381600087803b15801561143557600080fd5b505af1158015611449573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff1916905561147c60028b01600061221b565b896004016000905550505050505050505050565b60606000825160206114a2919061275c565b67ffffffffffffffff8111156114ba576114ba6122e3565b6040519080825280601f01601f1916602001820160405280156114e4576020820181803683370190505b50905060005b835181101561065d57600084828151811061150757611507612816565b6020026020010151905080826020026020018401525080806115289061282c565b9150506114ea565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b9493879391929091908301828280156115a057602002820191906000526020600020905b81548152602001906001019080831161158c575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a16845282528083209051959650949193506115ea92508591879101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615611686576001600160a01b0384166000908152602087815260408083206001600160e01b03198716845282528083209051909291611656918591879101612722565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008361169283611490565b6040516020016116a39291906126b3565b604051602081830303815290604052905060008051602061297083398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561170057600080fd5b505af1158015611714573d6000803e3d6000fd5b50505050600080866001600160a01b0316836040516117339190612666565b600060405180830381855afa9150503d806000811461176e576040519150601f19603f3d011682016040523d82523d6000602084013e611773565b606091505b50915061178790508161134387602061275c565b6040516365bc948160e01b81526001600160a01b038916600482015290925060009150600080516020612950833981519152906365bc9481906024016000604051808303816000875af11580156117e2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261180a91908101906128c5565b5090508051600103611ab157600060008051602061297083398151915260001c6001600160a01b031663667f9d70898460008151811061184c5761184c612816565b60200260200101516040518363ffffffff1660e01b8152600401611871929190612517565b6020604051808303816000875af1158015611890573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b49190612682565b905080611912577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a588836000815181106118f0576118f0612816565b602002602001015160001c604051611909929190612517565b60405180910390a15b8083146119315760405162461bcd60e51b81526004016106549061277b565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed88888789604051602001611967929190612722565b604051602081830303815290604052805190602001208560008151811061199057611990612816565b602002602001015160001c6040516119ab949392919061291f565b60405180910390a1816000815181106119c6576119c6612816565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c1683528452808220905192939092611a0f918a918c9101612722565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c16855282528284209251909391611a77918a918c9101612722565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff191691151591909117905550612029565b600181511115611fb95760005b8151811015611fb357600060008051602061297083398151915260001c6001600160a01b031663667f9d708a858581518110611afc57611afc612816565b60200260200101516040518363ffffffff1660e01b8152600401611b21929190612517565b6020604051808303816000875af1158015611b40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b649190612682565b905080611bc1577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a589848481518110611b9f57611b9f612816565b602002602001015160001c604051611bb8929190612517565b60405180910390a15b60008051602061297083398151915260001c6001600160a01b03166370ca10bb8a858581518110611bf457611bf4612816565b602002602001015161133760f01b6040518463ffffffff1660e01b8152600401611c2093929190612701565b600060405180830381600087803b158015611c3a57600080fd5b505af1158015611c4e573d6000803e3d6000fd5b50505050600060608a6001600160a01b031687604051611c6e9190612666565b600060405180830381855afa9150503d8060008114611ca9576040519150601f19603f3d011682016040523d82523d6000602084013e611cae565b606091505b509092509050611cc3816113438b602061275c565b9550818015611cd6575061133760f01b86145b15611f11577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001611d11929190612722565b60405160208183030381529060405280519060200120888881518110611d3957611d39612816565b602002602001015160001c604051611d54949392919061291f565b60405180910390a1848481518110611d6e57611d6e612816565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f1683528452808220905192939092611db7918d918f9101612722565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001611e42929190612722565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff02191690831515021790555060008051602061297083398151915260001c6001600160a01b03166370ca10bb8c878781518110611eb057611eb0612816565b6020026020010151866040518463ffffffff1660e01b8152600401611ed793929190612701565b600060405180830381600087803b158015611ef157600080fd5b505af1158015611f05573d6000803e3d6000fd5b50505050505050611fb3565b60008051602061297083398151915260001c6001600160a01b03166370ca10bb8c878781518110611f4457611f44612816565b6020026020010151866040518463ffffffff1660e01b8152600401611f6b93929190612701565b600060405180830381600087803b158015611f8557600080fd5b505af1158015611f99573d6000803e3d6000fd5b505050505050508080611fab9061282c565b915050611abe565b50612029565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e6064820152608401610654565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a1684528252808320905190929161206b9188918a9101612722565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff166120f85760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b6064820152608401610654565b6005890180546001600160a01b031916905560038901805463ffffffff1916905561212760028a01600061221b565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a1684528252808320905190929161216b9188918a9101612722565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b600080600060208551116121b35784516121b6565b60205b905060005b81811015612211576121ce81600861275c565b866121d9838861269b565b815181106121e9576121e9612816565b01602001516001600160f81b031916901c9290921791806122098161282c565b9150506121bb565b5090949350505050565b508054600082559060005260206000209081019061101d91905b808211156122495760008155600101612235565b5090565b80356001600160a01b0381168114610d3657600080fd5b6000806040838503121561227757600080fd5b6122808361224d565b946020939093013593505050565b6000602082840312156122a057600080fd5b6122a98261224d565b9392505050565b600080604083850312156122c357600080fd5b6122cc8361224d565b91506122da6020840161224d565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612322576123226122e3565b604052919050565b600067ffffffffffffffff821115612344576123446122e3565b50601f01601f191660200190565b60006123656123608461232a565b6122f9565b905082815283838301111561237957600080fd5b828260208301376000602084830101529392505050565b600082601f8301126123a157600080fd5b6122a983833560208501612352565b600080604083850312156123c357600080fd5b823567ffffffffffffffff808211156123db57600080fd5b6123e786838701612390565b935060208501359150808211156123fd57600080fd5b508301601f8101851361240f57600080fd5b61241e85823560208401612352565b9150509250929050565b60006020828403121561243a57600080fd5b5035919050565b60008060006060848603121561245657600080fd5b61245f8461224d565b925061246d6020850161224d565b9150604084013590509250925092565b801515811461101d57600080fd5b600080600080608085870312156124a157600080fd5b6124aa8561224d565b93506124b86020860161224d565b92506040850135915060608501356124cf8161247d565b939692955090935050565b6000602082840312156124ec57600080fd5b813567ffffffffffffffff81111561250357600080fd5b61250f84828501612390565b949350505050565b6001600160a01b03929092168252602082015260400190565b60005b8381101561254b578181015183820152602001612533565b8381111561255a576000848401525b50505050565b602081526000825180602084015261257f816040850160208701612530565b601f01601f19169190910160400192915050565b6000602082840312156125a557600080fd5b815167ffffffffffffffff8111156125bc57600080fd5b8201601f810184136125cd57600080fd5b80516125db6123608261232a565b8181528560208385010111156125f057600080fd5b612601826020830160208601612530565b95945050505050565b6000835161261c818460208801612530565b835190830190612630818360208801612530565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b60008282101561266157612661612639565b500390565b60008251612678818460208701612530565b9190910192915050565b60006020828403121561269457600080fd5b5051919050565b600082198211156126ae576126ae612639565b500190565b6001600160e01b03198316815281516000906126d6816004850160208701612530565b919091016004019392505050565b6000602082840312156126f657600080fd5b81516122a98161247d565b6001600160a01b039390931683526020830191909152604082015260600190565b825160009082906020808701845b8381101561274c57815185529382019390820190600101612730565b5050948252509092019392505050565b600081600019048311821515161561277657612776612639565b500290565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b634e487b7160e01b600052603260045260246000fd5b60006001820161283e5761283e612639565b5060010190565b600082601f83011261285657600080fd5b8151602067ffffffffffffffff821115612872576128726122e3565b8160051b6128818282016122f9565b928352848101820192828101908785111561289b57600080fd5b83870192505b848310156128ba578251825291830191908301906128a1565b979650505050505050565b600080604083850312156128d857600080fd5b825167ffffffffffffffff808211156128f057600080fd5b6128fc86838701612845565b9350602085015191508082111561291257600080fd5b5061241e85828601612845565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12da2646970667358221220d6ff5e3313e3ce24fd3544f0dd3b7b03fc27d3fe9c0f727ccf288733ca76654b64736f6c634300080d0033", + "sourceMap": "95:133:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;131:26;;2070:116:2;;;;;;:::i;:::-;;:::i;1417:96::-;;;;;;:::i;:::-;;:::i;1631:120::-;;;;;;:::i;:::-;;:::i;5142:455::-;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;2921:32:9;;;2903:51;;2891:2;2876:18;5142:455:2;;;;;;;;1269:85;;;;;;:::i;:::-;;:::i;322:38:1:-;;-1:-1:-1;;;;;;;;;;;322:38:1;;2441:140:2;;;;;;:::i;:::-;;:::i;163:63:8:-;;;:::i;3370:107:2:-;;;;;;:::i;:::-;;:::i;1958:106::-;;;;;;:::i;:::-;;:::i;3483:915::-;;;;;;:::i;:::-;;:::i;5603:406::-;;;;;;:::i;:::-;;:::i;1757:130::-;;;;;;:::i;:::-;;:::i;1180:83::-;;;;;;:::i;:::-;;:::i;1819:584:0:-;;;:::i;:::-;;;4780:14:9;;4773:22;4755:41;;4743:2;4728:18;1819:584:0;4615:187:9;3165:81:2;;;;;;:::i;:::-;;:::i;2305:130::-;;;;;;:::i;:::-;;:::i;2733:341::-;;;;;;:::i;:::-;;:::i;1519:106::-;;;;;;:::i;:::-;;:::i;171:28:1:-;;;;;;;;;;;;1572:26:0;;;;;;;;;131::8;:::o;2070:116:2:-;2133:18;;-1:-1:-1;;;2133:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2133:7:2;;:18;;2141:3;;2146:4;;2133:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2161:18:2;;-1:-1:-1;;;2161:18:2;;-1:-1:-1;;;;;2921:32:9;;2161:18:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2161:13:2;;-1:-1:-1;2876:18:9;;2161::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2070:116;;:::o;1417:96::-;1461:22;;-1:-1:-1;;;1461:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1461:7:2;;:22;;1469:3;;-1:-1:-1;;;1474:8:2;1461:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1493:13:2;;-1:-1:-1;;;1493:13:2;;-1:-1:-1;;;;;2921:32:9;;1493:13:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1493:8:2;;-1:-1:-1;2876:18:9;;1493:13:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1417:96;:::o;1631:120::-;1691:22;;-1:-1:-1;;;1691:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1691:7:2;;:22;;1699:3;;-1:-1:-1;;;1704:8:2;1691:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1723:21:2;;-1:-1:-1;;;1723:21:2;;-1:-1:-1;;;;;5641:15:9;;;1723:21:2;;;5623:34:9;5693:15;;5673:18;;;5666:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1723:8:2;;-1:-1:-1;5558:18:9;;1723:21:2;5411:304:9;5142:455:2;5302:16;;-1:-1:-1;;;5302:16:2;;5233:12;;;;-1:-1:-1;;;;;;;;;;;251:64:1;5302:10:2;;:16;;5313:4;;5302:16;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5302:16:2;;;;;;;;;;;;:::i;:::-;5320:4;5285:40;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5261:64;;5446:8;5440:15;5433:4;5423:8;5419:19;5416:1;5409:47;5401:55;-1:-1:-1;;;;;;5497:18:2;;5476:114;;;;-1:-1:-1;;;5476:114:2;;7684:2:9;5476:114:2;;;7666:21:9;7723:2;7703:18;;;7696:30;7762:34;7742:18;;;7735:62;-1:-1:-1;;;7813:18:9;;;7806:47;7870:19;;5476:114:2;;;;;;;;;5251:346;5142:455;;;;:::o;1269:85::-;-1:-1:-1;;;;;;;;;;;1316:7:2;1324:22;1342:4;1324:15;:22;:::i;:::-;1316:31;;;;;;;;;;;;;8308:25:9;;8296:2;8281:18;;8162:177;2441:140:2;2520:18;;-1:-1:-1;;;2520:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2520:7:2;;:18;;2528:3;;2533:4;;2520:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2548:26:2;;-1:-1:-1;;;2548:26:2;;-1:-1:-1;;;;;5641:15:9;;;2548:26:2;;;5623:34:9;5693:15;;5673:18;;;5666:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2548:13:2;;-1:-1:-1;5558:18:9;;2548:26:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2441:140;;;:::o;163:63:8:-;203:16;214:4;203:10;:16::i;3370:107:2:-;3442:28;3447:5;3454:2;3458:4;3464:5;3442:4;:28::i;:::-;3370:107;;;:::o;1958:106::-;2007:22;;-1:-1:-1;;;2007:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2007:7:2;;:22;;2015:3;;-1:-1:-1;;;2020:8:2;2007:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2039:18:2;;-1:-1:-1;;;2039:18:2;;-1:-1:-1;;;;;2921:32:9;;2039:18:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2039:13:2;;-1:-1:-1;2876:18:9;;2039::2;2757:203:9;3483:915:2;3637:38;;;-1:-1:-1;;;;;2921:32:9;;;3637:38:2;;;;2903:51:9;;;;3637:38:2;;;;;;;;;;2876:18:9;;;;3637:38:2;;;;;;;-1:-1:-1;;;;;3637:38:2;-1:-1:-1;;;3637:38:2;;;3626:50;;3602:20;;3626:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3599:77;;;3686:15;3715:7;3704:30;;;;;;;;;;;;:::i;:::-;3686:48;-1:-1:-1;3771:123:2;3889:4;3771:90;3858:2;3771:64;-1:-1:-1;;;3771:35:2;:8;3800:5;3771:28;:35::i;:::-;:52;19603:9;;;:16;;-1:-1:-1;;19603:16:2;;;;;;;;;;;;:9;19504:143;3771:64;:86;19919:10;;;:47;;;;;;;-1:-1:-1;19919:47:2;;;;;;;-1:-1:-1;;;;;19943:21:2;;;;19919:47;;;:10;19815:179;3771:90;:117;;:123::i;:::-;3939:6;3936:456;;;4001:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4001:34:2;-1:-1:-1;;;4001:34:2;;;3990:46;;3963:23;;-1:-1:-1;;;;;3990:10:2;;;:46;;4001:34;3990:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3960:76;;;4050:14;4078:10;4067:33;;;;;;;;;;;;:::i;:::-;4050:50;;4124:7;4117:4;:14;4114:143;;;4162:14;4172:4;4162:7;:14;:::i;:::-;4151:26;;;;:::i;:::-;;;4114:143;;;4227:14;4234:7;4227:4;:14;:::i;:::-;4216:26;;;;:::i;:::-;;;4114:143;4270:111;4374:6;4270:72;-1:-1:-1;;;4270:39:2;:8;4303:5;4270:32;:39::i;:111::-;3946:446;;3558:840;;3483:915;;;;:::o;5603:406::-;5727:16;;-1:-1:-1;;;5727:16:2;;5675:12;;;;-1:-1:-1;;;;;;;;;;;251:64:1;5727:10:2;;:16;;5738:4;;5727:16;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5727:16:2;;;;;;;;;;;;:::i;:::-;5703:40;;5864:8;5858:15;5851:4;5841:8;5837:19;5834:1;5827:47;5819:55;-1:-1:-1;;;;;;5915:18:2;;5894:108;;;;-1:-1:-1;;;5894:108:2;;9147:2:9;5894:108:2;;;9129:21:9;9186:2;9166:18;;;9159:30;9225:34;9205:18;;;9198:62;-1:-1:-1;;;9276:18:9;;;9269:41;9327:19;;5894:108:2;8945:407:9;5894:108:2;5693:316;5603:406;;;:::o;1757:130::-;1831:18;;-1:-1:-1;;;1831:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1831:7:2;;:18;;1839:3;;1844:4;;1831:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1859:21:2;;-1:-1:-1;;;1859:21:2;;-1:-1:-1;;;;;5641:15:9;;;1859:21:2;;;5623:34:9;5693:15;;5673:18;;;5666:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1859:8:2;;-1:-1:-1;5558:18:9;;1859:21:2;5411:304:9;1180:83:2;-1:-1:-1;;;;;;;;;;;1225:7:2;1233:22;1251:4;1233:15;:22;:::i;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;3165:81:2:-;3222:17;;-1:-1:-1;;;3222:17:2;;-1:-1:-1;;;;;;;;;;;251:64:1;3222:7:2;;:17;;3230:2;;3234:4;;3222:17;;;:::i;2305:130::-;2370:22;;-1:-1:-1;;;2370:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2370:7:2;;:22;;2378:3;;-1:-1:-1;;;2383:8:2;2370:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2402:26:2;;-1:-1:-1;;;2402:26:2;;-1:-1:-1;;;;;5641:15:9;;;2402:26:2;;;5623:34:9;5693:15;;5673:18;;;5666:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2402:13:2;;-1:-1:-1;5558:18:9;;2402:26:2;5411:304:9;2733:341:2;2809:125;;;;;10565:2:9;10547:21;;;10604:1;10584:18;;;10577:29;-1:-1:-1;;;10637:2:9;10622:18;;10615:37;10690:3;10683:4;10668:20;;10661:33;;;10731:2;10710:19;;;10703:31;10771:34;10765:3;10750:19;;10743:63;10843:34;10837:3;10822:19;;10815:63;10915:32;10909:3;10894:19;;10887:61;10980:3;10965:19;;10262:728;2809:125:2;;;;;;;;2944:123;3062:4;2944:90;3031:2;2944:64;-1:-1:-1;;;2944:35:2;:8;2973:5;2944:28;:35::i;1519:106::-;1577:18;;-1:-1:-1;;;1577:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1577:7:2;;:18;;1585:3;;1590:4;;1577:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1605:13:2;;-1:-1:-1;;;1605:13:2;;-1:-1:-1;;;;;2921:32:9;;1605:13:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1605:8:2;;-1:-1:-1;2876:18:9;;1605:13:2;2757:203:9;3255:157:0;3315:9;3310:96;;3345:30;;;;;11197:2:9;11179:21;;;11236:2;11216:18;;;11209:30;11275:25;11270:2;11255:18;;11248:53;11333:2;11318:18;;10995:347;3345:30:0;;;;;;;;3389:6;:4;:6::i;:::-;3255:157;:::o;19342:156:2:-;19448:12;;;:22;;-1:-1:-1;;;;;;19448:22:2;-1:-1:-1;;;;;19448:22:2;;;;;;;;;;:12;19342:156::o;20626:120::-;20706:33;20720:4;20734:3;20706:13;:33::i;:::-;20626:120;;:::o;2410:424:0:-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;20980:1089:2:-;21096:12;;;;21132:9;;;;21173:11;;;;21217:10;;;21194:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21096:12:2;;;;21132:9;;;;;;21082:11;;21194:33;;21217:10;;21194:33;;21217:10;21194:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21238:17;21275:4;21281:12;21289:3;21281:7;:12::i;:::-;21258:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;21258:36:2;;;;;;;;;-1:-1:-1;;;;;21309:15:2;;;;;;:10;;;21258:36;21309:15;;;;;;-1:-1:-1;;;;;;21309:21:2;;;;;;;;;21258:36;;-1:-1:-1;21309:21:2;;:15;;21341:34;;21358:3;;21363:11;;21341:34;;:::i;:::-;;;;-1:-1:-1;;21341:34:2;;;;;;;;;21331:45;;21341:34;21331:45;;;;21309:68;;;;;;;;;;-1:-1:-1;21309:68:2;;;;21304:110;;21393:10;21398:4;21393;:10::i;:::-;;21304:110;-1:-1:-1;;;;;21446:15:2;;21423:12;21446:15;;;;;;;;;;;-1:-1:-1;;;;;;21446:21:2;;;;;;;;;21478:34;;21446:21;;21423:12;;21478:34;;21495:3;;21500:11;;21478:34;;:::i;:::-;;;;;;;;;;;;;21468:45;;;;;;21446:68;;;;;;;;;;;;21438:77;;21423:92;;21526:12;21565:17;21586:3;-1:-1:-1;;;;;21586:14:2;21601:4;21586:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21562:44:2;-1:-1:-1;21627:36:2;;-1:-1:-1;21562:44:2;21648:14;21651:11;21648:2;:14;:::i;:::-;21627;:36::i;:::-;21698:28;;-1:-1:-1;;;21698:28:2;;21620:43;;-1:-1:-1;21683:12:2;;-1:-1:-1;;;;;;;;;;;;21698:17:2;;;:28;;21716:3;;21721:4;;21698:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21683:43;;21749:4;21741;:12;21737:172;;21769:129;;-1:-1:-1;;;21769:129:2;;;;;;;:::i;:::-;21918:34;;-1:-1:-1;;;21918:34:2;;-1:-1:-1;;;;;;;;;;;21918:18:2;;;:34;;21937:3;;21942:4;;21948:3;;21918:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;21969:12:2;;;21962:19;;-1:-1:-1;;;;;;21962:19:2;;;-1:-1:-1;21998:9:2;;;21991:16;;-1:-1:-1;;21991:16:2;;;22017:17;-1:-1:-1;22024:10:2;;21969:12;22017:17;:::i;:::-;22051:4;:11;;22044:18;;;21072:997;;;;;;;;20980:1089;;:::o;23413:397::-;23472:12;23500:19;23532:1;:8;23543:2;23532:13;;;;:::i;:::-;23522:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23522:24:2;;23500:46;;23561:9;23556:224;23580:1;:8;23576:1;:12;23556:224;;;23609:9;23621:1;23623;23621:4;;;;;;;;:::i;:::-;;;;;;;23609:16;;23754:1;23748;23744:2;23740:10;23736:2;23732:19;23724:6;23720:32;23713:43;23695:75;23590:3;;;;;:::i;:::-;;;;23556:224;;16122:3214;16246:12;;;;16282:9;;;;16323:11;;;;16367:10;;;16344:33;;;;;;;;;;;;;;;;;;;16209:7;;-1:-1:-1;;;;;16246:12:2;;16282:9;;;16323:11;16209:7;;16344:33;;16367:10;;16344:33;;;16367:10;16344:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;16428:15:2;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;16428:21:2;;;;;;;;;16460:34;;16344:33;;-1:-1:-1;16428:21:2;:15;;-1:-1:-1;16460:34:2;;-1:-1:-1;16344:33:2;;16482:11;;16460:34;;:::i;:::-;;;;-1:-1:-1;;16460:34:2;;;;;;;;;16450:45;;16460:34;16450:45;;;;16428:68;;;;;;;;;;-1:-1:-1;16428:68:2;;;;16424:174;;;-1:-1:-1;;;;;16519:15:2;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;16519:21:2;;;;;;;;;16551:34;;16519:21;;:10;16551:34;;16568:3;;16573:11;;16551:34;;:::i;:::-;;;;;;;;;;;;;16541:45;;;;;;16519:68;;;;;;;;;;;;16512:75;;;;;;16122:3214;;;:::o;16424:174::-;16607:17;16644:4;16650:12;16658:3;16650:7;:12::i;:::-;16627:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;16607:56;;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;16673:19:2;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16704:12;16743:17;16764:3;-1:-1:-1;;;;;16764:14:2;16779:4;16764:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16740:44:2;-1:-1:-1;16805:36:2;;-1:-1:-1;16740:44:2;16826:14;16829:11;16826:2;:14;:::i;16805:36::-;16891:35;;-1:-1:-1;;;16891:35:2;;-1:-1:-1;;;;;2921:32:9;;16891:35:2;;;2903:51:9;16798:43:2;;-1:-1:-1;16863:22:2;;-1:-1:-1;;;;;;;;;;;;16891:21:2;;;2876:18:9;;16891:35:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16891:35:2;;;;;;;;;;;;:::i;:::-;16862:64;;;16940:5;:12;16956:1;16940:17;16936:2058;;16973:12;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;16988:17:2;;17006:3;17011:5;17017:1;17011:8;;;;;;;;:::i;:::-;;;;;;;16988:32;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16973:47;-1:-1:-1;16973:47:2;17034:106;;17081:44;17102:3;17115:5;17121:1;17115:8;;;;;;;;:::i;:::-;;;;;;;17107:17;;17081:44;;;;;;;:::i;:::-;;;;;;;;17034:106;17165:4;17157;:12;17153:180;;17189:129;;-1:-1:-1;;;17189:129:2;;;;;;;:::i;:::-;17351:86;17361:3;17366:4;17399:3;17404:11;17382:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;17372:45;;;;;;17427:5;17433:1;17427:8;;;;;;;;:::i;:::-;;;;;;;17419:17;;17351:86;;;;;;;;;:::i;:::-;;;;;;;;17530:5;17536:1;17530:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;17451:15:2;;17522:17;17451:15;;;;;;;;;;-1:-1:-1;;;;;;17451:21:2;;;;;;;;;17483:34;;17530:8;;17451:21;;17483:34;;17500:3;;17505:11;;17483:34;;:::i;:::-;;;;-1:-1:-1;;17483:34:2;;;;;;;;;17473:45;;17483:34;17473:45;;;;17451:68;;;;;;;;;;;;-1:-1:-1;17451:68:2;;;:88;;;;-1:-1:-1;;;;;17553:15:2;;;;17624:4;17553:10;;;:15;;;;;-1:-1:-1;;;;;;17553:21:2;;;;;;;;;17585:34;;17624:4;;-1:-1:-1;17585:34:2;;17602:3;;17607:11;;17585:34;;:::i;:::-;;;;;;;-1:-1:-1;;17585:34:2;;;;;;17575:45;;17585:34;17575:45;;;;17553:68;;;;;;;;;;-1:-1:-1;17553:68:2;:75;;-1:-1:-1;;17553:75:2;;;;;;;;;;-1:-1:-1;16936:2058:2;;;17664:1;17649:5;:12;:16;17645:1349;;;17686:9;17681:1190;17705:5;:12;17701:1;:16;17681:1190;;;17742:12;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;17757:17:2;;17775:3;17780:5;17786:1;17780:8;;;;;;;;:::i;:::-;;;;;;;17757:32;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17742:47;-1:-1:-1;17742:47:2;17807:114;;17858:44;17879:3;17892:5;17898:1;17892:8;;;;;;;;:::i;:::-;;;;;;;17884:17;;17858:44;;;;;;;:::i;:::-;;;;;;;;17807:114;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;17963:18:2;;17982:3;17987:5;17993:1;17987:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;17963:53:2;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18034:12;18064:17;18139:3;-1:-1:-1;;;;;18139:14:2;18154:4;18139:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18121:38:2;;-1:-1:-1;18121:38:2;-1:-1:-1;18188:36:2;18121:38;18209:14;18212:11;18209:2;:14;:::i;18188:36::-;18181:43;;18265:7;:37;;;;;-1:-1:-1;;;18276:4:2;:26;18265:37;18261:539;;;18400:86;18410:3;18415:4;18448:3;18453:11;18431:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18421:45;;;;;;18476:5;18482:1;18476:8;;;;;;;;:::i;:::-;;;;;;;18468:17;;18400:86;;;;;;;;;:::i;:::-;;;;;;;;18587:5;18593:1;18587:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;18508:15:2;;18579:17;18508:15;;;;;;;;;;-1:-1:-1;;;;;;18508:21:2;;;;;;;;;18540:34;;18587:8;;18508:21;;18540:34;;18557:3;;18562:11;;18540:34;;:::i;:::-;;;;;;;;;;;;;18530:45;;;;;;18508:68;;;;;;;;;;;:88;;;;18689:4;18618;:10;;:15;18629:3;-1:-1:-1;;;;;18618:15:2;-1:-1:-1;;;;;18618:15:2;;;;;;;;;;;;:21;18634:4;-1:-1:-1;;;;;18618:21:2;;-1:-1:-1;;;;;18618:21:2;;;;;;;;;;;;;:68;18667:3;18672:11;18650:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18640:45;;;;;;18618:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;18715:18:2;;18734:3;18739:5;18745:1;18739:8;;;;;;;;:::i;:::-;;;;;;;18749:4;18715:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18776:5;;;;;18261:539;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;18817:18:2;;18836:3;18841:5;18847:1;18841:8;;;;;;;;:::i;:::-;;;;;;;18851:4;18817:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17724:1147;;;17719:3;;;;;:::i;:::-;;;;17681:1190;;;;17645:1349;;;18901:82;;;-1:-1:-1;;;18901:82:2;;15489:2:9;18901:82:2;;;15471:21:9;15508:18;;;15501:30;;;;15567:34;15547:18;;;15540:62;15638:34;15618:18;;;15611:62;15690:19;;18901:82:2;15287:428:9;18901:82:2;-1:-1:-1;;;;;19012:15:2;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;19012:21:2;;;;;;;;;19044:34;;19012:21;;:15;19044:34;;19061:3;;19066:11;;19044:34;;:::i;:::-;;;;-1:-1:-1;;19044:34:2;;;;;;;;;19034:45;;19044:34;19034:45;;;;19012:68;;;;;;;;;;-1:-1:-1;19012:68:2;;;;19004:128;;;;-1:-1:-1;;;19004:128:2;;15922:2:9;19004:128:2;;;15904:21:9;15961:2;15941:18;;;15934:30;16000:34;15980:18;;;15973:62;-1:-1:-1;;;16051:18:9;;;16044:45;16106:19;;19004:128:2;15720:411:9;19004:128:2;19150:12;;;19143:19;;-1:-1:-1;;;;;;19143:19:2;;;19179:9;;;19172:16;;-1:-1:-1;;19172:16:2;;;19198:17;-1:-1:-1;19205:10:2;;19150:12;19198:17;:::i;:::-;19225:18;19232:11;;;19225:18;;;-1:-1:-1;;;;;19261:15:2;;;;;;;;;;;;-1:-1:-1;;;;;;19261:21:2;;;;;;;;;19293:34;;19261:21;;19225:18;19293:34;;19310:3;;19315:11;;19293:34;;:::i;:::-;;;;;;;;;;;;;19283:45;;;;;;19261:68;;;;;;;;;;;;19254:75;;;;;;;;;16122:3214;;;:::o;23110:297::-;23184:7;23203:11;23225;23250:2;23239:1;:8;:13;:29;;23260:1;:8;23239:29;;;23255:2;23239:29;23225:43;;23283:6;23278:103;23299:3;23295:1;:7;23278:103;;;23364:5;:1;23368;23364:5;:::i;:::-;23338:1;23340:10;23349:1;23340:6;:10;:::i;:::-;23338:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;23338:13:2;23330:40;;23323:47;;;;;23304:3;;;;:::i;:::-;;;;23278:103;;;-1:-1:-1;23397:3:2;;23110:297;-1:-1:-1;;;;23110:297:2:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:173:9:-;82:20;;-1:-1:-1;;;;;131:31:9;;121:42;;111:70;;177:1;174;167:12;192:254;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;436:2;421:18;;;;408:32;;-1:-1:-1;;;192:254:9:o;451:186::-;510:6;563:2;551:9;542:7;538:23;534:32;531:52;;;579:1;576;569:12;531:52;602:29;621:9;602:29;:::i;:::-;592:39;451:186;-1:-1:-1;;;451:186:9:o;642:260::-;710:6;718;771:2;759:9;750:7;746:23;742:32;739:52;;;787:1;784;777:12;739:52;810:29;829:9;810:29;:::i;:::-;800:39;;858:38;892:2;881:9;877:18;858:38;:::i;:::-;848:48;;642:260;;;;;:::o;907:127::-;968:10;963:3;959:20;956:1;949:31;999:4;996:1;989:15;1023:4;1020:1;1013:15;1039:275;1110:2;1104:9;1175:2;1156:13;;-1:-1:-1;;1152:27:9;1140:40;;1210:18;1195:34;;1231:22;;;1192:62;1189:88;;;1257:18;;:::i;:::-;1293:2;1286:22;1039:275;;-1:-1:-1;1039:275:9:o;1319:187::-;1368:4;1401:18;1393:6;1390:30;1387:56;;;1423:18;;:::i;:::-;-1:-1:-1;1489:2:9;1468:15;-1:-1:-1;;1464:29:9;1495:4;1460:40;;1319:187::o;1511:338::-;1576:5;1605:53;1621:36;1650:6;1621:36;:::i;:::-;1605:53;:::i;:::-;1596:62;;1681:6;1674:5;1667:21;1721:3;1712:6;1707:3;1703:16;1700:25;1697:45;;;1738:1;1735;1728:12;1697:45;1787:6;1782:3;1775:4;1768:5;1764:16;1751:43;1841:1;1834:4;1825:6;1818:5;1814:18;1810:29;1803:40;1511:338;;;;;:::o;1854:222::-;1897:5;1950:3;1943:4;1935:6;1931:17;1927:27;1917:55;;1968:1;1965;1958:12;1917:55;1990:80;2066:3;2057:6;2044:20;2037:4;2029:6;2025:17;1990:80;:::i;2081:671::-;2168:6;2176;2229:2;2217:9;2208:7;2204:23;2200:32;2197:52;;;2245:1;2242;2235:12;2197:52;2285:9;2272:23;2314:18;2355:2;2347:6;2344:14;2341:34;;;2371:1;2368;2361:12;2341:34;2394:50;2436:7;2427:6;2416:9;2412:22;2394:50;:::i;:::-;2384:60;;2497:2;2486:9;2482:18;2469:32;2453:48;;2526:2;2516:8;2513:16;2510:36;;;2542:1;2539;2532:12;2510:36;-1:-1:-1;2565:24:9;;2620:4;2612:13;;2608:27;-1:-1:-1;2598:55:9;;2649:1;2646;2639:12;2598:55;2672:74;2738:7;2733:2;2720:16;2715:2;2711;2707:11;2672:74;:::i;:::-;2662:84;;;2081:671;;;;;:::o;2965:180::-;3024:6;3077:2;3065:9;3056:7;3052:23;3048:32;3045:52;;;3093:1;3090;3083:12;3045:52;-1:-1:-1;3116:23:9;;2965:180;-1:-1:-1;2965:180:9:o;3369:328::-;3446:6;3454;3462;3515:2;3503:9;3494:7;3490:23;3486:32;3483:52;;;3531:1;3528;3521:12;3483:52;3554:29;3573:9;3554:29;:::i;:::-;3544:39;;3602:38;3636:2;3625:9;3621:18;3602:38;:::i;:::-;3592:48;;3687:2;3676:9;3672:18;3659:32;3649:42;;3369:328;;;;;:::o;3702:118::-;3788:5;3781:13;3774:21;3767:5;3764:32;3754:60;;3810:1;3807;3800:12;3825:458;3908:6;3916;3924;3932;3985:3;3973:9;3964:7;3960:23;3956:33;3953:53;;;4002:1;3999;3992:12;3953:53;4025:29;4044:9;4025:29;:::i;:::-;4015:39;;4073:38;4107:2;4096:9;4092:18;4073:38;:::i;:::-;4063:48;;4158:2;4147:9;4143:18;4130:32;4120:42;;4212:2;4201:9;4197:18;4184:32;4225:28;4247:5;4225:28;:::i;:::-;3825:458;;;;-1:-1:-1;3825:458:9;;-1:-1:-1;;3825:458:9:o;4288:322::-;4357:6;4410:2;4398:9;4389:7;4385:23;4381:32;4378:52;;;4426:1;4423;4416:12;4378:52;4466:9;4453:23;4499:18;4491:6;4488:30;4485:50;;;4531:1;4528;4521:12;4485:50;4554;4596:7;4587:6;4576:9;4572:22;4554:50;:::i;:::-;4544:60;4288:322;-1:-1:-1;;;;4288:322:9:o;4807:274::-;-1:-1:-1;;;;;4999:32:9;;;;4981:51;;5063:2;5048:18;;5041:34;4969:2;4954:18;;4807:274::o;5720:258::-;5792:1;5802:113;5816:6;5813:1;5810:13;5802:113;;;5892:11;;;5886:18;5873:11;;;5866:39;5838:2;5831:10;5802:113;;;5933:6;5930:1;5927:13;5924:48;;;5968:1;5959:6;5954:3;5950:16;5943:27;5924:48;;5720:258;;;:::o;5983:383::-;6132:2;6121:9;6114:21;6095:4;6164:6;6158:13;6207:6;6202:2;6191:9;6187:18;6180:34;6223:66;6282:6;6277:2;6266:9;6262:18;6257:2;6249:6;6245:15;6223:66;:::i;:::-;6350:2;6329:15;-1:-1:-1;;6325:29:9;6310:45;;;;6357:2;6306:54;;5983:383;-1:-1:-1;;5983:383:9:o;6371:635::-;6450:6;6503:2;6491:9;6482:7;6478:23;6474:32;6471:52;;;6519:1;6516;6509:12;6471:52;6552:9;6546:16;6585:18;6577:6;6574:30;6571:50;;;6617:1;6614;6607:12;6571:50;6640:22;;6693:4;6685:13;;6681:27;-1:-1:-1;6671:55:9;;6722:1;6719;6712:12;6671:55;6751:2;6745:9;6776:49;6792:32;6821:2;6792:32;:::i;6776:49::-;6848:2;6841:5;6834:17;6888:7;6883:2;6878;6874;6870:11;6866:20;6863:33;6860:53;;;6909:1;6906;6899:12;6860:53;6922:54;6973:2;6968;6961:5;6957:14;6952:2;6948;6944:11;6922:54;:::i;:::-;6995:5;6371:635;-1:-1:-1;;;;;6371:635:9:o;7011:466::-;7186:3;7224:6;7218:13;7240:53;7286:6;7281:3;7274:4;7266:6;7262:17;7240:53;:::i;:::-;7356:13;;7315:16;;;;7378:57;7356:13;7315:16;7412:4;7400:17;;7378:57;:::i;:::-;7451:20;;7011:466;-1:-1:-1;;;;7011:466:9:o;7900:127::-;7961:10;7956:3;7952:20;7949:1;7942:31;7992:4;7989:1;7982:15;8016:4;8013:1;8006:15;8032:125;8072:4;8100:1;8097;8094:8;8091:34;;;8105:18;;:::i;:::-;-1:-1:-1;8142:9:9;;8032:125::o;8344:274::-;8473:3;8511:6;8505:13;8527:53;8573:6;8568:3;8561:4;8553:6;8549:17;8527:53;:::i;:::-;8596:16;;;;;8344:274;-1:-1:-1;;8344:274:9:o;8623:184::-;8693:6;8746:2;8734:9;8725:7;8721:23;8717:32;8714:52;;;8762:1;8759;8752:12;8714:52;-1:-1:-1;8785:16:9;;8623:184;-1:-1:-1;8623:184:9:o;8812:128::-;8852:3;8883:1;8879:6;8876:1;8873:13;8870:39;;;8889:18;;:::i;:::-;-1:-1:-1;8925:9:9;;8812:128::o;9636:371::-;-1:-1:-1;;;;;;9821:33:9;;9809:46;;9878:13;;9791:3;;9900:61;9878:13;9950:1;9941:11;;9934:4;9922:17;;9900:61;:::i;:::-;9981:16;;;;9999:1;9977:24;;9636:371;-1:-1:-1;;;9636:371:9:o;10012:245::-;10079:6;10132:2;10120:9;10111:7;10107:23;10103:32;10100:52;;;10148:1;10145;10138:12;10100:52;10180:9;10174:16;10199:28;10221:5;10199:28;:::i;11347:345::-;-1:-1:-1;;;;;11567:32:9;;;;11549:51;;11631:2;11616:18;;11609:34;;;;11674:2;11659:18;;11652:34;11537:2;11522:18;;11347:345::o;11697:610::-;11943:13;;11886:3;;11917;;11996:4;12023:15;;;11886:3;12066:175;12080:6;12077:1;12074:13;12066:175;;;12143:13;;12129:28;;12179:14;;;;12216:15;;;;12102:1;12095:9;12066:175;;;-1:-1:-1;;12250:21:9;;;-1:-1:-1;12287:14:9;;;;;-1:-1:-1;;;11697:610:9:o;12312:168::-;12352:7;12418:1;12414;12410:6;12406:14;12403:1;12400:21;12395:1;12388:9;12381:17;12377:45;12374:71;;;12425:18;;:::i;:::-;-1:-1:-1;12465:9:9;;12312:168::o;12674:556::-;12876:2;12858:21;;;12915:3;12895:18;;;12888:31;12955:34;12950:2;12935:18;;12928:62;13026:34;13021:2;13006:18;;12999:62;13098:34;13092:3;13077:19;;13070:63;-1:-1:-1;;;13164:3:9;13149:19;;13142:46;13220:3;13205:19;;12674:556::o;13235:127::-;13296:10;13291:3;13287:20;13284:1;13277:31;13327:4;13324:1;13317:15;13351:4;13348:1;13341:15;13367:135;13406:3;13427:17;;;13424:43;;13447:18;;:::i;:::-;-1:-1:-1;13494:1:9;13483:13;;13367:135::o;13507:709::-;13572:5;13625:3;13618:4;13610:6;13606:17;13602:27;13592:55;;13643:1;13640;13633:12;13592:55;13672:6;13666:13;13698:4;13721:18;13717:2;13714:26;13711:52;;;13743:18;;:::i;:::-;13789:2;13786:1;13782:10;13812:28;13836:2;13832;13828:11;13812:28;:::i;:::-;13874:15;;;13944;;;13940:24;;;13905:12;;;;13976:15;;;13973:35;;;14004:1;14001;13994:12;13973:35;14040:2;14032:6;14028:15;14017:26;;14052:135;14068:6;14063:3;14060:15;14052:135;;;14134:10;;14122:23;;14085:12;;;;14165;;;;14052:135;;;14205:5;13507:709;-1:-1:-1;;;;;;;13507:709:9:o;14221:614::-;14350:6;14358;14411:2;14399:9;14390:7;14386:23;14382:32;14379:52;;;14427:1;14424;14417:12;14379:52;14460:9;14454:16;14489:18;14530:2;14522:6;14519:14;14516:34;;;14546:1;14543;14536:12;14516:34;14569:72;14633:7;14624:6;14613:9;14609:22;14569:72;:::i;:::-;14559:82;;14687:2;14676:9;14672:18;14666:25;14650:41;;14716:2;14706:8;14703:16;14700:36;;;14732:1;14729;14722:12;14700:36;;14755:74;14821:7;14810:8;14799:9;14795:24;14755:74;:::i;14840:442::-;-1:-1:-1;;;;;15087:32:9;;;;15069:51;;-1:-1:-1;;;;;;15156:33:9;;;;15151:2;15136:18;;15129:61;15221:2;15206:18;;15199:34;15264:2;15249:18;;15242:34;15056:3;15041:19;;14840:442::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_SCRIPT()": "f8ccbf47", + "IS_TEST()": "fa7626d4", + "deal(address,address,uint256)": "6bce989b", + "deal(address,address,uint256,bool)": "97754ae9", + "deal(address,uint256)": "c88a5e6d", + "deployCode(string)": "9a8325a0", + "deployCode(string,bytes)": "29ce9dde", + "failed()": "ba414fa6", + "hoax(address)": "233240ee", + "hoax(address,address)": "29a9e300", + "hoax(address,address,uint256)": "af9bbe5f", + "hoax(address,uint256)": "e9a79a7b", + "rewind(uint256)": "2d6c17a3", + "setUp()": "0a9254e4", + "skip(uint256)": "b9c071b4", + "startHoax(address)": "6f597075", + "startHoax(address,address)": "d06d8229", + "startHoax(address,address,uint256)": "3bf82db1", + "startHoax(address,uint256)": "108554f2", + "testExample()": "3f5a4a2a", + "tip(address,address,uint256)": "d82555f1", + "vm()": "3a768463" + }, + "ast": { + "absolutePath": "test/Contract.t.sol", + "id": 21133, + "exportedSymbols": { + "ContractTest": [ + 21132 + ], + "DSTest": [ + 1786 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "39:190:8", + "nodes": [ + { + "id": 21116, + "nodeType": "PragmaDirective", + "src": "39:24:8", + "literals": [ + "solidity", + "^", + "0.8", + ".13" + ] + }, + { + "id": 21117, + "nodeType": "ImportDirective", + "src": "65:28:8", + "absolutePath": "lib/forge-std/src/Test.sol", + "file": "forge-std/Test.sol", + "nameLocation": "-1:-1:-1", + "scope": 21133, + "sourceUnit": 4485, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21132, + "nodeType": "ContractDefinition", + "src": "95:133:8", + "nodes": [ + { + "id": 21123, + "nodeType": "FunctionDefinition", + "src": "131:26:8", + "body": { + "id": 21122, + "nodeType": "Block", + "src": "155:2:8", + "statements": [] + }, + "functionSelector": "0a9254e4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setUp", + "nameLocation": "140:5:8", + "parameters": { + "id": 21120, + "nodeType": "ParameterList", + "parameters": [], + "src": "145:2:8" + }, + "returnParameters": { + "id": 21121, + "nodeType": "ParameterList", + "parameters": [], + "src": "155:0:8" + }, + "scope": 21132, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21131, + "nodeType": "FunctionDefinition", + "src": "163:63:8", + "body": { + "id": 21130, + "nodeType": "Block", + "src": "193:33:8", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "74727565", + "id": 21127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "214:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 21126, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "203:10:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 21128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "203:16:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21129, + "nodeType": "ExpressionStatement", + "src": "203:16:8" + } + ] + }, + "functionSelector": "3f5a4a2a", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "testExample", + "nameLocation": "172:11:8", + "parameters": { + "id": 21124, + "nodeType": "ParameterList", + "parameters": [], + "src": "183:2:8" + }, + "returnParameters": { + "id": 21125, + "nodeType": "ParameterList", + "parameters": [], + "src": "193:0:8" + }, + "scope": 21132, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 21118, + "name": "Test", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3137, + "src": "120:4:8" + }, + "id": 21119, + "nodeType": "InheritanceSpecifier", + "src": "120:4:8" + } + ], + "canonicalName": "ContractTest", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21132, + 3137, + 1818, + 1786 + ], + "name": "ContractTest", + "nameLocation": "104:12:8", + "scope": 21133, + "usedErrors": [] + } + ], + "license": "UNLICENSED" + }, + "id": 8 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Fail.sol/Fail.json b/getting-started/foundry/out/Fail.sol/Fail.json new file mode 100644 index 00000000..19657a67 --- /dev/null +++ b/getting-started/foundry/out/Fail.sol/Fail.json @@ -0,0 +1,199 @@ +{ + "abi": [ + { + "inputs": [], + "name": "revert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x6080604052348015600f57600080fd5b5060b78061001e6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c80637da3c3ab14602d575b600080fd5b60336035565b005b60405162461bcd60e51b815260206004820152601760248201527f66616c73652069732066616c73652120416d617a696e21000000000000000000604482015260640160405180910390fdfea2646970667358221220f753c17be5260204526ed6c0ccd8b0a5363a088f0a136a0b5420461547df25b564736f6c634300080d0033", + "sourceMap": "96:98:1:-:0;;;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x6080604052348015600f57600080fd5b506004361060285760003560e01c80637da3c3ab14602d575b600080fd5b60336035565b005b60405162461bcd60e51b815260206004820152601760248201527f66616c73652069732066616c73652120416d617a696e21000000000000000000604482015260640160405180910390fdfea2646970667358221220f753c17be5260204526ed6c0ccd8b0a5363a088f0a136a0b5420461547df25b564736f6c634300080d0033", + "sourceMap": "96:98:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;115:77;;;:::i;:::-;;;146:41;;-1:-1:-1;;;146:41:1;;216:2:2;146:41:1;;;198:21:2;255:2;235:18;;;228:30;294:25;274:18;;;267:53;337:18;;146:41:1;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": { + "revert()": "7da3c3ab" + }, + "ast": { + "absolutePath": "src/Fail.sol", + "id": 8077, + "exportedSymbols": { + "Fail": [ + 8076 + ], + "console": [ + 8063 + ] + }, + "nodeType": "SourceUnit", + "src": "37:180:1", + "nodes": [ + { + "id": 8065, + "nodeType": "PragmaDirective", + "src": "37:23:1", + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ] + }, + { + "id": 8066, + "nodeType": "ImportDirective", + "src": "63:31:1", + "absolutePath": "lib/forge-std/src/console.sol", + "file": "forge-std/console.sol", + "nameLocation": "-1:-1:-1", + "scope": 8077, + "sourceUnit": 8064, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 8076, + "nodeType": "ContractDefinition", + "src": "96:98:1", + "nodes": [ + { + "id": 8075, + "nodeType": "FunctionDefinition", + "src": "115:77:1", + "body": { + "id": 8074, + "nodeType": "Block", + "src": "140:52:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 8070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "154:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "66616c73652069732066616c73652120416d617a696e21", + "id": 8071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "161:25:1", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e93eaad0d3077374e597e6bae04fa4b4c5c50e04b86b12fbc0259bcf145726ab", + "typeString": "literal_string \"false is false! Amazin!\"" + }, + "value": "false is false! Amazin!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_e93eaad0d3077374e597e6bae04fa4b4c5c50e04b86b12fbc0259bcf145726ab", + "typeString": "literal_string \"false is false! Amazin!\"" + } + ], + "id": 8069, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "146:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 8072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "146:41:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8073, + "nodeType": "ExpressionStatement", + "src": "146:41:1" + } + ] + }, + "functionSelector": "7da3c3ab", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "revert", + "nameLocation": "124:6:1", + "parameters": { + "id": 8067, + "nodeType": "ParameterList", + "parameters": [], + "src": "130:2:1" + }, + "returnParameters": { + "id": 8068, + "nodeType": "ParameterList", + "parameters": [], + "src": "140:0:1" + }, + "scope": 8076, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "Fail", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 8076 + ], + "name": "Fail", + "nameLocation": "105:4:1", + "scope": 8077, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 1 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Greeter.sol/Greeter.json b/getting-started/foundry/out/Greeter.sol/Greeter.json new file mode 100644 index 00000000..706d96e0 --- /dev/null +++ b/getting-started/foundry/out/Greeter.sol/Greeter.json @@ -0,0 +1,1697 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "_greeting", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "xorigin", + "type": "address" + } + ], + "name": "SetGreeting", + "type": "event" + }, + { + "inputs": [], + "name": "greet", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "_greeting", + "type": "string" + } + ], + "name": "setGreeting", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x608060405234801561001057600080fd5b506040516106db3803806106db83398101604081905261002f916100f8565b8051610042906000906020840190610049565b5050610201565b828054610055906101c7565b90600052602060002090601f01602090048101928261007757600085556100bd565b82601f1061009057805160ff19168380011785556100bd565b828001600101855582156100bd579182015b828111156100bd5782518255916020019190600101906100a2565b506100c99291506100cd565b5090565b5b808211156100c957600081556001016100ce565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561010b57600080fd5b82516001600160401b038082111561012257600080fd5b818501915085601f83011261013657600080fd5b815181811115610148576101486100e2565b604051601f8201601f19908116603f01168101908382118183101715610170576101706100e2565b81604052828152888684870101111561018857600080fd5b600093505b828410156101aa578484018601518185018701529285019261018d565b828411156101bb5760008684830101525b98975050505050505050565b600181811c908216806101db57607f821691505b6020821081036101fb57634e487b7160e01b600052602260045260246000fd5b50919050565b6104cb806102106000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a41368621461003b578063cfae321714610050575b600080fd5b61004e610049366004610325565b61006e565b005b6100586100da565b60405161006591906103d6565b60405180910390f35b8051610081906000906020840190610276565b507f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b733326100ad61016c565b604080516001600160a01b039485168152928416602084015292168183015290519081900360600190a150565b6060600080546100e99061042b565b80601f01602080910402602001604051908101604052809291908181526020018280546101159061042b565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050905090565b6000804660010361018e57507325ace71c97b33cc4729cf772ae268934f7ab5fa15b46602a036101ad5750734361d0f75a0186c05f971c566dc6bea5957483fd5b466005036101cc5750735086d1eef304eb5284a0f6720f79403b4e9be2945b46600a14806101db5750466045145b806101e75750466101a4145b156101f657506007602160991b015b336001600160a01b0382161461020e57600091505090565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102709190610465565b91505090565b8280546102829061042b565b90600052602060002090601f0160209004810192826102a457600085556102ea565b82601f106102bd57805160ff19168380011785556102ea565b828001600101855582156102ea579182015b828111156102ea5782518255916020019190600101906102cf565b506102f69291506102fa565b5090565b5b808211156102f657600081556001016102fb565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561033757600080fd5b813567ffffffffffffffff8082111561034f57600080fd5b818401915084601f83011261036357600080fd5b8135818111156103755761037561030f565b604051601f8201601f19908116603f0116810190838211818310171561039d5761039d61030f565b816040528281528760208487010111156103b657600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015610403578581018301518582016040015282016103e7565b81811115610415576000604083870101525b50601f01601f1916929092016040019392505050565b600181811c9082168061043f57607f821691505b60208210810361045f57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561047757600080fd5b81516001600160a01b038116811461048e57600080fd5b939250505056fea26469706673582212202f95b0be980874e382fab7b6bfb6e2873bd4fef6880b9e29af096d03b3563ebf64736f6c634300080d0033", + "sourceMap": "248:1494:7:-:0;;;441:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;484:20;;;;:8;;:20;;;;;:::i;:::-;;441:68;248:1494;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;248:1494:7;;;-1:-1:-1;248:1494:7;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:127:9;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:1087;226:6;257:2;300;288:9;279:7;275:23;271:32;268:52;;;316:1;313;306:12;268:52;343:16;;-1:-1:-1;;;;;408:14:9;;;405:34;;;435:1;432;425:12;405:34;473:6;462:9;458:22;448:32;;518:7;511:4;507:2;503:13;499:27;489:55;;540:1;537;530:12;489:55;569:2;563:9;591:2;587;584:10;581:36;;;597:18;;:::i;:::-;672:2;666:9;640:2;726:13;;-1:-1:-1;;722:22:9;;;746:2;718:31;714:40;702:53;;;770:18;;;790:22;;;767:46;764:72;;;816:18;;:::i;:::-;856:10;852:2;845:22;891:2;883:6;876:18;931:7;926:2;921;917;913:11;909:20;906:33;903:53;;;952:1;949;942:12;903:53;974:1;965:10;;984:129;998:2;995:1;992:9;984:129;;;1086:10;;;1082:19;;1076:26;1055:14;;;1051:23;;1044:59;1009:10;;;;984:129;;;1131:2;1128:1;1125:9;1122:80;;;1190:1;1185:2;1180;1172:6;1168:15;1164:24;1157:35;1122:80;1221:6;146:1087;-1:-1:-1;;;;;;;;146:1087:9:o;1238:380::-;1317:1;1313:12;;;;1360;;;1381:61;;1435:4;1427:6;1423:17;1413:27;;1381:61;1488:2;1480:6;1477:14;1457:18;1454:38;1451:161;;1534:10;1529:3;1525:20;1522:1;1515:31;1569:4;1566:1;1559:15;1597:4;1594:1;1587:15;1451:161;;1238:380;;;:::o;:::-;248:1494:7;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063a41368621461003b578063cfae321714610050575b600080fd5b61004e610049366004610325565b61006e565b005b6100586100da565b60405161006591906103d6565b60405180910390f35b8051610081906000906020840190610276565b507f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b733326100ad61016c565b604080516001600160a01b039485168152928416602084015292168183015290519081900360600190a150565b6060600080546100e99061042b565b80601f01602080910402602001604051908101604052809291908181526020018280546101159061042b565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050905090565b6000804660010361018e57507325ace71c97b33cc4729cf772ae268934f7ab5fa15b46602a036101ad5750734361d0f75a0186c05f971c566dc6bea5957483fd5b466005036101cc5750735086d1eef304eb5284a0f6720f79403b4e9be2945b46600a14806101db5750466045145b806101e75750466101a4145b156101f657506007602160991b015b336001600160a01b0382161461020e57600091505090565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102709190610465565b91505090565b8280546102829061042b565b90600052602060002090601f0160209004810192826102a457600085556102ea565b82601f106102bd57805160ff19168380011785556102ea565b828001600101855582156102ea579182015b828111156102ea5782518255916020019190600101906102cf565b506102f69291506102fa565b5090565b5b808211156102f657600081556001016102fb565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561033757600080fd5b813567ffffffffffffffff8082111561034f57600080fd5b818401915084601f83011261036357600080fd5b8135818111156103755761037561030f565b604051601f8201601f19908116603f0116810190838211818310171561039d5761039d61030f565b816040528281528760208487010111156103b657600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015610403578581018301518582016040015282016103e7565b81811115610415576000604083870101525b50601f01601f1916929092016040019392505050565b600181811c9082168061043f57607f821691505b60208210810361045f57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561047757600080fd5b81516001600160a01b038116811461048e57600080fd5b939250505056fea26469706673582212202f95b0be980874e382fab7b6bfb6e2873bd4fef6880b9e29af096d03b3563ebf64736f6c634300080d0033", + "sourceMap": "248:1494:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;596:141;;;;;;:::i;:::-;;:::i;:::-;;513:79;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;596:141;655:20;;;;:8;;:20;;;;;:::i;:::-;;686:46;698:10;710:9;721:10;:8;:10::i;:::-;686:46;;;-1:-1:-1;;;;;1933:15:9;;;1915:34;;1985:15;;;1980:2;1965:18;;1958:43;2037:15;;2017:18;;;2010:43;686:46:7;;;;;;1865:2:9;686:46:7;;;596:141;:::o;513:79::-;551:13;579:8;572:15;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;513:79;:::o;783:940::-;825:7;;1021:13;1038:1;1021:18;1017:82;;-1:-1:-1;1057:42:7;1017:82;1123:13;1140:2;1123:19;1119:83;;-1:-1:-1;1160:42:7;1119:83;1227:13;1244:1;1227:18;1223:82;;-1:-1:-1;1263:42:7;1223:82;1358:13;1375:2;1358:19;:42;;;;1381:13;1398:2;1381:19;1358:42;:66;;;;1404:13;1421:3;1404:20;1358:66;1354:130;;;-1:-1:-1;;;;;;1354:130:7;1539:10;-1:-1:-1;;;;;1539:21:7;;;1535:50;;1583:1;1568:17;;;783:940;:::o;1535:50::-;1687:7;-1:-1:-1;;;;;1665:51:7;;:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1658:60;;;783:940;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:127:9;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:922;215:6;268:2;256:9;247:7;243:23;239:32;236:52;;;284:1;281;274:12;236:52;324:9;311:23;353:18;394:2;386:6;383:14;380:34;;;410:1;407;400:12;380:34;448:6;437:9;433:22;423:32;;493:7;486:4;482:2;478:13;474:27;464:55;;515:1;512;505:12;464:55;551:2;538:16;573:2;569;566:10;563:36;;;579:18;;:::i;:::-;654:2;648:9;622:2;708:13;;-1:-1:-1;;704:22:9;;;728:2;700:31;696:40;684:53;;;752:18;;;772:22;;;749:46;746:72;;;798:18;;:::i;:::-;838:10;834:2;827:22;873:2;865:6;858:18;913:7;908:2;903;899;895:11;891:20;888:33;885:53;;;934:1;931;924:12;885:53;990:2;985;981;977:11;972:2;964:6;960:15;947:46;1035:1;1013:15;;;1030:2;1009:24;1002:35;;;;-1:-1:-1;1017:6:9;146:922;-1:-1:-1;;;;;146:922:9:o;1073:597::-;1185:4;1214:2;1243;1232:9;1225:21;1275:6;1269:13;1318:6;1313:2;1302:9;1298:18;1291:34;1343:1;1353:140;1367:6;1364:1;1361:13;1353:140;;;1462:14;;;1458:23;;1452:30;1428:17;;;1447:2;1424:26;1417:66;1382:10;;1353:140;;;1511:6;1508:1;1505:13;1502:91;;;1581:1;1576:2;1567:6;1556:9;1552:22;1548:31;1541:42;1502:91;-1:-1:-1;1654:2:9;1633:15;-1:-1:-1;;1629:29:9;1614:45;;;;1661:2;1610:54;;1073:597;-1:-1:-1;;;1073:597:9:o;2064:380::-;2143:1;2139:12;;;;2186;;;2207:61;;2261:4;2253:6;2249:17;2239:27;;2207:61;2314:2;2306:6;2303:14;2283:18;2280:38;2277:161;;2360:10;2355:3;2351:20;2348:1;2341:31;2395:4;2392:1;2385:15;2423:4;2420:1;2413:15;2277:161;;2064:380;;;:::o;2449:290::-;2519:6;2572:2;2560:9;2551:7;2547:23;2543:32;2540:52;;;2588:1;2585;2578:12;2540:52;2614:16;;-1:-1:-1;;;;;2659:31:9;;2649:42;;2639:70;;2705:1;2702;2695:12;2639:70;2728:5;2449:290;-1:-1:-1;;;2449:290:9:o", + "linkReferences": {} + }, + "methodIdentifiers": { + "greet()": "cfae3217", + "setGreeting(string)": "a4136862" + }, + "ast": { + "absolutePath": "src/Greeter.sol", + "id": 21260, + "exportedSymbols": { + "Greeter": [ + 21259 + ], + "ICrossDomainMessenger": [ + 21131 + ], + "console": [ + 13028 + ] + }, + "nodeType": "SourceUnit", + "src": "37:1728:7", + "nodes": [ + { + "id": 21133, + "nodeType": "PragmaDirective", + "src": "37:23:7", + "literals": [ + "solidity", + "^", + "0.8", + ".0" + ] + }, + { + "id": 21134, + "nodeType": "ImportDirective", + "src": "63:31:7", + "absolutePath": "lib/forge-std/src/console.sol", + "file": "forge-std/console.sol", + "nameLocation": "-1:-1:-1", + "scope": 21260, + "sourceUnit": 13029, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21136, + "nodeType": "ImportDirective", + "src": "134:112:7", + "absolutePath": "lib/node_modules/@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol", + "file": "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol", + "nameLocation": "-1:-1:-1", + "scope": 21260, + "sourceUnit": 21132, + "symbolAliases": [ + { + "foreign": { + "id": 21135, + "name": "ICrossDomainMessenger", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21131, + "src": "143:21:7", + "typeDescriptions": {} + }, + "nameLocation": "-1:-1:-1" + } + ], + "unitAlias": "" + }, + { + "id": 21259, + "nodeType": "ContractDefinition", + "src": "248:1494:7", + "nodes": [ + { + "id": 21138, + "nodeType": "VariableDeclaration", + "src": "269:15:7", + "constant": false, + "mutability": "mutable", + "name": "greeting", + "nameLocation": "276:8:7", + "scope": 21259, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string" + }, + "typeName": { + "id": 21137, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "269:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "id": 21146, + "nodeType": "EventDefinition", + "src": "289:115:7", + "anonymous": false, + "eventSelector": "2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b7", + "name": "SetGreeting", + "nameLocation": "295:11:7", + "parameters": { + "id": 21145, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21140, + "indexed": false, + "mutability": "mutable", + "name": "sender", + "nameLocation": "320:6:7", + "nodeType": "VariableDeclaration", + "scope": 21146, + "src": "312:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21139, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "312:7:7", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21142, + "indexed": false, + "mutability": "mutable", + "name": "origin", + "nameLocation": "358:6:7", + "nodeType": "VariableDeclaration", + "scope": 21146, + "src": "350:14:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21141, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "350:7:7", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21144, + "indexed": false, + "mutability": "mutable", + "name": "xorigin", + "nameLocation": "395:7:7", + "nodeType": "VariableDeclaration", + "scope": 21146, + "src": "387:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21143, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "387:7:7", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "306:97:7" + } + }, + { + "id": 21156, + "nodeType": "FunctionDefinition", + "src": "441:68:7", + "body": { + "id": 21155, + "nodeType": "Block", + "src": "478:31:7", + "statements": [ + { + "expression": { + "id": 21153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21151, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21138, + "src": "484:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 21152, + "name": "_greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21148, + "src": "495:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "484:20:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 21154, + "nodeType": "ExpressionStatement", + "src": "484:20:7" + } + ] + }, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "parameters": { + "id": 21149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21148, + "mutability": "mutable", + "name": "_greeting", + "nameLocation": "467:9:7", + "nodeType": "VariableDeclaration", + "scope": 21156, + "src": "453:23:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21147, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "453:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "452:25:7" + }, + "returnParameters": { + "id": 21150, + "nodeType": "ParameterList", + "parameters": [], + "src": "478:0:7" + }, + "scope": 21259, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21164, + "nodeType": "FunctionDefinition", + "src": "513:79:7", + "body": { + "id": 21163, + "nodeType": "Block", + "src": "566:26:7", + "statements": [ + { + "expression": { + "id": 21161, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21138, + "src": "579:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "functionReturnParameters": 21160, + "id": 21162, + "nodeType": "Return", + "src": "572:15:7" + } + ] + }, + "functionSelector": "cfae3217", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "greet", + "nameLocation": "522:5:7", + "parameters": { + "id": 21157, + "nodeType": "ParameterList", + "parameters": [], + "src": "527:2:7" + }, + "returnParameters": { + "id": 21160, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21159, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 21164, + "src": "551:13:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21158, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "551:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "550:15:7" + }, + "scope": 21259, + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "id": 21183, + "nodeType": "FunctionDefinition", + "src": "596:141:7", + "body": { + "id": 21182, + "nodeType": "Block", + "src": "649:88:7", + "statements": [ + { + "expression": { + "id": 21171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21169, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21138, + "src": "655:8:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 21170, + "name": "_greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21166, + "src": "666:9:7", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "655:20:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 21172, + "nodeType": "ExpressionStatement", + "src": "655:20:7" + }, + { + "eventCall": { + "arguments": [ + { + "expression": { + "id": 21174, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "698:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 21175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "698:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 21176, + "name": "tx", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -26, + "src": "710:2:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_transaction", + "typeString": "tx" + } + }, + "id": 21177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "origin", + "nodeType": "MemberAccess", + "src": "710:9:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 21178, + "name": "getXorig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21258, + "src": "721:8:7", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_address_$", + "typeString": "function () view returns (address)" + } + }, + "id": 21179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "721:10:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 21173, + "name": "SetGreeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21146, + "src": "686:11:7", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address,address)" + } + }, + "id": 21180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "686:46:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21181, + "nodeType": "EmitStatement", + "src": "681:51:7" + } + ] + }, + "functionSelector": "a4136862", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setGreeting", + "nameLocation": "605:11:7", + "parameters": { + "id": 21167, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21166, + "mutability": "mutable", + "name": "_greeting", + "nameLocation": "631:9:7", + "nodeType": "VariableDeclaration", + "scope": 21183, + "src": "617:23:7", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21165, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "617:6:7", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "616:25:7" + }, + "returnParameters": { + "id": 21168, + "nodeType": "ParameterList", + "parameters": [], + "src": "649:0:7" + }, + "scope": 21259, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21258, + "nodeType": "FunctionDefinition", + "src": "783:940:7", + "body": { + "id": 21257, + "nodeType": "Block", + "src": "834:889:7", + "statements": [ + { + "assignments": [ + 21189 + ], + "declarations": [ + { + "constant": false, + "id": 21189, + "mutability": "mutable", + "name": "cdmAddr", + "nameLocation": "971:7:7", + "nodeType": "VariableDeclaration", + "scope": 21257, + "src": "963:15:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21188, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "963:7:7", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 21194, + "initialValue": { + "arguments": [ + { + "hexValue": "30", + "id": 21192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "989:1:7", + "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": 21191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "981:7:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 21190, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "981:7:7", + "typeDescriptions": {} + } + }, + "id": 21193, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "981:10:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "963:28:7" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21195, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1021:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1021:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 21197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1038:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1021:18:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 21203, + "nodeType": "IfStatement", + "src": "1017:82:7", + "trueBody": { + "expression": { + "id": 21201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21199, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1047:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "307832356163653731633937423333436334373239434637373261653236383933344637616235664131", + "id": 21200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1057:42:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1" + }, + "src": "1047:52:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21202, + "nodeType": "ExpressionStatement", + "src": "1047:52:7" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21204, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1123:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1123:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3432", + "id": 21206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1140:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_42_by_1", + "typeString": "int_const 42" + }, + "value": "42" + }, + "src": "1123:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 21212, + "nodeType": "IfStatement", + "src": "1119:83:7", + "trueBody": { + "expression": { + "id": 21210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21208, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1150:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "307834333631643046373541303138364330356639373163353636644336624561353935373438336644", + "id": 21209, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1160:42:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x4361d0F75A0186C05f971c566dC6bEa5957483fD" + }, + "src": "1150:52:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21211, + "nodeType": "ExpressionStatement", + "src": "1150:52:7" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21216, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21213, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1227:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1227:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "35", + "id": 21215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1244:1:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "src": "1227:18:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 21221, + "nodeType": "IfStatement", + "src": "1223:82:7", + "trueBody": { + "expression": { + "id": 21219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21217, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1253:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "307835303836643165454633303465623532383441306636373230663739343033623465396245323934", + "id": 21218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1263:42:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x5086d1eEF304eb5284A0f6720f79403b4e9bE294" + }, + "src": "1253:52:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21220, + "nodeType": "ExpressionStatement", + "src": "1253:52:7" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 21235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 21230, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21222, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1358:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1358:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3130", + "id": 21224, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1375:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "src": "1358:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21226, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1381:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1381:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "3639", + "id": 21228, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1398:2:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_69_by_1", + "typeString": "int_const 69" + }, + "value": "69" + }, + "src": "1381:19:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1358:42:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 21234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21231, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1404:5:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 21232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "chainid", + "nodeType": "MemberAccess", + "src": "1404:13:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "343230", + "id": 21233, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1421:3:7", + "typeDescriptions": { + "typeIdentifier": "t_rational_420_by_1", + "typeString": "int_const 420" + }, + "value": "420" + }, + "src": "1404:20:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "1358:66:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 21240, + "nodeType": "IfStatement", + "src": "1354:130:7", + "trueBody": { + "expression": { + "id": 21238, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21236, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1432:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "307834323030303030303030303030303030303030303030303030303030303030303030303030303037", + "id": 21237, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1442:42:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x4200000000000000000000000000000000000007" + }, + "src": "1432:52:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 21239, + "nodeType": "ExpressionStatement", + "src": "1432:52:7" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 21244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 21241, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -15, + "src": "1539:3:7", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 21242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1539:10:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 21243, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1553:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1539:21:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 21250, + "nodeType": "IfStatement", + "src": "1535:50:7", + "trueBody": { + "expression": { + "arguments": [ + { + "hexValue": "30", + "id": 21247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1583:1:7", + "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": 21246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1575:7:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 21245, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1575:7:7", + "typeDescriptions": {} + } + }, + "id": 21248, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1575:10:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 21187, + "id": 21249, + "nodeType": "Return", + "src": "1568:17:7" + } + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "arguments": [ + { + "id": 21252, + "name": "cdmAddr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21189, + "src": "1687:7:7", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 21251, + "name": "ICrossDomainMessenger", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21131, + "src": "1665:21:7", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_ICrossDomainMessenger_$21131_$", + "typeString": "type(contract ICrossDomainMessenger)" + } + }, + "id": 21253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1665:30:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_ICrossDomainMessenger_$21131", + "typeString": "contract ICrossDomainMessenger" + } + }, + "id": 21254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "xDomainMessageSender", + "nodeType": "MemberAccess", + "referencedDeclaration": 21120, + "src": "1665:51:7", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_address_$", + "typeString": "function () view external returns (address)" + } + }, + "id": 21255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1665:53:7", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "functionReturnParameters": 21187, + "id": 21256, + "nodeType": "Return", + "src": "1658:60:7" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getXorig", + "nameLocation": "792:8:7", + "parameters": { + "id": 21184, + "nodeType": "ParameterList", + "parameters": [], + "src": "800:2:7" + }, + "returnParameters": { + "id": 21187, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21186, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 21258, + "src": "825:7:7", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21185, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "825:7:7", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "824:9:7" + }, + "scope": 21259, + "stateMutability": "view", + "virtual": false, + "visibility": "private" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "Greeter", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21259 + ], + "name": "Greeter", + "nameLocation": "257:7:7", + "scope": 21260, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 7 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Greeter.t.sol/GreeterTest.json b/getting-started/foundry/out/Greeter.t.sol/GreeterTest.json new file mode 100644 index 00000000..591a6b49 --- /dev/null +++ b/getting-started/foundry/out/Greeter.t.sol/GreeterTest.json @@ -0,0 +1,2129 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "xorigin", + "type": "address" + } + ], + "name": "SetGreeting", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "log_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "log_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "log_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "log_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "val", + "type": "address" + } + ], + "name": "log_named_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "val", + "type": "bytes" + } + ], + "name": "log_named_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "val", + "type": "bytes32" + } + ], + "name": "log_named_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + } + ], + "name": "log_named_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "val", + "type": "string" + } + ], + "name": "log_named_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + } + ], + "name": "log_named_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "log_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "logs", + "type": "event" + }, + { + "inputs": [], + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "adjust", + "type": "bool" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + }, + { + "internalType": "bytes", + "name": "args", + "type": "bytes" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "rewind", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setUp", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "skip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "testGreeting", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "testSetGreeting", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "tip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vm", + "outputs": [ + { + "internalType": "contract Vm", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040526000805462ff00ff19166201000117905534801561002157600080fd5b50613761806100316000396000f3fe60806040523480156200001157600080fd5b5060043610620001695760003560e01c80639a8325a011620000d3578063d82555f11162000086578063d82555f1146200030b578063e31b08ca1462000322578063e9a79a7b146200032c578063ef84f4dd1462000343578063f8ccbf47146200034d578063fa7626d4146200036157600080fd5b80639a8325a0146200027d578063af9bbe5f1462000294578063b9c071b414620002ab578063ba414fa614620002c2578063c88a5e6d14620002dd578063d06d822914620002f457600080fd5b80632d6c17a3116200012c5780632d6c17a314620001f35780633a768463146200020a5780633bf82db114620002215780636bce989b14620002385780636f597075146200024f57806397754ae9146200026657600080fd5b80630a9254e4146200016e578063108554f2146200017a578063233240ee146200019157806329a9e30014620001a857806329ce9dde14620001bf575b600080fd5b620001786200036f565b005b620001786200018b3660046200283c565b620003d9565b62000178620001a236600462002869565b620004b2565b62000178620001b93660046200288e565b6200058e565b620001d6620001d0366004620029a1565b62000640565b6040516001600160a01b0390911681526020015b60405180910390f35b620001786200020436600462002a21565b62000770565b620001d6600080516020620036ec83398151915281565b620001786200023236600462002a3b565b620007b0565b620001786200024936600462002a3b565b62000892565b620001786200026036600462002869565b620008a6565b620001786200027736600462002a8b565b62000950565b620001d66200028e36600462002ae1565b62000b91565b62000178620002a536600462002a3b565b62000c93565b62000178620002bc36600462002a21565b62000d41565b620002cc62000d62565b6040519015158152602001620001ea565b62000178620002ee3660046200283c565b62000e93565b62000178620003053660046200288e565b62000ec9565b620001786200031c36600462002a3b565b62000f7b565b6200017862001072565b620001786200033d3660046200283c565b62001115565b62000178620011bb565b600054620002cc9062010000900460ff1681565b600054620002cc9060ff1681565b6040516200037d90620027e1565b60208082526005908201526468656c6c6f60d81b6040820152606001604051809103906000f080158015620003b6573d6000803e3d6000fd5b50600880546001600160a01b0319166001600160a01b0392909216919091179055565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200040f908590859060040162002b22565b600060405180830381600087803b1580156200042a57600080fd5b505af11580156200043f573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b0385166004820152600080516020620036ec83398151915292506306447d5691506024015b600060405180830381600087803b1580156200049557600080fd5b505af1158015620004aa573d6000803e3d6000fd5b505050505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620004ec908490600160801b9060040162002b22565b600060405180830381600087803b1580156200050757600080fd5b505af11580156200051c573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0384166004820152600080516020620036ec833981519152925063ca669fa791506024015b600060405180830381600087803b1580156200057257600080fd5b505af115801562000587573d6000803e3d6000fd5b5050505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620005c8908590600160801b9060040162002b22565b600060405180830381600087803b158015620005e357600080fd5b505af1158015620005f8573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b03808616600483015284166024820152600080516020620036ec83398151915292506347e50cce91506044016200047a565b604051638d1cc92560e01b81526000908190600080516020620036ec83398151915290638d1cc925906200067990879060040162002b9c565b6000604051808303816000875af115801562000699573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620006c3919081019062002be7565b83604051602001620006d792919062002c35565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216620007695760405162461bcd60e51b815260206004820152603160248201527f54657374206465706c6f79436f646528737472696e672c6279746573293a204460448201527032b83637bcb6b2b73a103330b4b632b21760791b60648201526084015b60405180910390fd5b5092915050565b600080516020620036ec83398151915263e5d6bf0262000791834262002c7e565b6040518263ffffffff1660e01b81526004016200055791815260200190565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620007e6908690859060040162002b22565b600060405180830381600087803b1580156200080157600080fd5b505af115801562000816573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b03808716600483015285166024820152600080516020620036ec83398151915292506345b5607891506044015b600060405180830381600087803b1580156200087457600080fd5b505af115801562000889573d6000803e3d6000fd5b50505050505050565b620008a1838383600062000950565b505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620008e0908490600160801b9060040162002b22565b600060405180830381600087803b158015620008fb57600080fd5b505af115801562000910573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b0384166004820152600080516020620036ec83398151915292506306447d56915060240162000557565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620009a69162002c98565b6000604051808303816000865af19150503d8060008114620009e5576040519150601f19603f3d011682016040523d82523d6000602084013e620009ea565b606091505b5091505060008180602001905181019062000a06919062002cb6565b905062000a788462000a718762000a486370a0823160e01b62000a2b60018d620013c8565b9060038201805463ffffffff191660e09290921c91909117905590565b90600282018054600181018255600091825260209091206001600160a01b039290921691015590565b90620013ed565b8215620004aa5760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162000ac3919062002c98565b6000604051808303816000865af19150503d806000811462000b02576040519150601f19603f3d011682016040523d82523d6000602084013e62000b07565b606091505b5091505060008180602001905181019062000b23919062002cb6565b90508286101562000b4e5762000b3a868462002c7e565b62000b46908262002c7e565b905062000b69565b62000b5a838762002c7e565b62000b66908262002cd0565b90505b62000b878162000a716318160ddd60e01b62000a2b60018d620013c8565b5050505050505050565b604051638d1cc92560e01b81526000908190600080516020620036ec83398151915290638d1cc9259062000bca90869060040162002b9c565b6000604051808303816000875af115801562000bea573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c14919081019062002be7565b90508051602082016000f091506001600160a01b03821662000c8d5760405162461bcd60e51b815260206004820152602b60248201527f54657374206465706c6f79436f646528737472696e67293a204465706c6f796d60448201526a32b73a103330b4b632b21760a91b606482015260840162000760565b50919050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d9062000cc9908690859060040162002b22565b600060405180830381600087803b15801562000ce457600080fd5b505af115801562000cf9573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b03808716600483015285166024820152600080516020620036ec83398151915292506347e50cce915060440162000859565b600080516020620036ec83398151915263e5d6bf0262000791834262002cd0565b60008054610100900460ff161562000d835750600054610100900460ff1690565b6000600080516020620036ec8339815191523b1562000e8e57604051600090600080516020620036ec833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc49062000df09083906519985a5b195960d21b9060200162002b22565b60408051601f198184030181529082905262000e10929160200162002ceb565b60408051601f198184030181529082905262000e2c9162002c98565b6000604051808303816000865af19150503d806000811462000e6b576040519150601f19603f3d011682016040523d82523d6000602084013e62000e70565b606091505b509150508080602001905181019062000e8a919062002d1e565b9150505b919050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200047a908590859060040162002b22565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d9062000f03908590600160801b9060040162002b22565b600060405180830381600087803b15801562000f1e57600080fd5b505af115801562000f33573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b03808616600483015284166024820152600080516020620036ec83398151915292506345b5607891506044016200047a565b7f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358360405162001047906040808252600790820152665741524e494e4760c81b6060820152608060208201819052605e908201527f546573742074697028616464726573732c616464726573732c75696e7432353660a08201527f293a2054686520607469706020737464636865617420686173206265656e206460c08201527f6570726563617465642e2055736520606465616c6020696e73746561642e000060e08201526101000190565b60405180910390a1620008a18162000a718462000a486370a0823160e01b62000a2b60018a620013c8565b6008546040805163cfae321760e01b815290516060926001600160a01b03169163cfae32179160048083019260009291908290030181865afa158015620010bd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620010e7919081019062002be7565b905062001112816040518060400160405280600581526020016468656c6c6f60d81b815250620013fd565b50565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200114b908590859060040162002b22565b600060405180830381600087803b1580156200116657600080fd5b505af11580156200117b573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0385166004820152600080516020620036ec833981519152925063ca669fa791506024016200047a565b60405163248e63e160e11b815260016004820181905260248201819052604482015260006064820152606090600080516020620036ec8339815191529063491cc7c290608401600060405180830381600087803b1580156200121c57600080fd5b505af115801562001231573d6000803e3d6000fd5b50506040805173b4c79dab8f259c7aee6e5b2aa729821864227e84815272a329c0648769a73afac7f9381e08fb43dbea72602082015260008183015290517f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b79350908190036060019150a1600854604051635209b43160e11b815260206004820152600c60248201526b4e6577204772656574696e6760a01b60448201526001600160a01b039091169063a413686290606401600060405180830381600087803b158015620012ff57600080fd5b505af115801562001314573d6000803e3d6000fd5b50505050600860009054906101000a90046001600160a01b03166001600160a01b031663cfae32176040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200136c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001396919081019062002be7565b905062001112816040518060400160405280600c81526020016b4e6577204772656574696e6760a01b815250620013fd565b6005820180546001600160a01b0319166001600160a01b039290921691909117905590565b620013f9828262001546565b5050565b8060405160200162001410919062002c98565b604051602081830303815290604052805190602001208260405160200162001439919062002c98565b6040516020818303038152906040528051906020012014620013f9577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620014c29060208082526024908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472604082015263696e675d60e01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381604051620014fb919062002d3e565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838260405162001534919062002d74565b60405180910390a1620013f9620018af565b600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b9460009390929091830182828015620015b957602002820191906000526020600020905b815481526020019060010190808311620015a4575b50505050509050600083620015ce83620019b3565b604051602001620015e192919062002ceb565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a1683528152928120919450909290916200163591869188910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662001670576200166e8762001a60565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b0319881684528252808320905190918391620016b191879189910162002daa565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b031684604051620016f8919062002c98565b600060405180830381855afa9150503d806000811462001735576040519150601f19603f3d011682016040523d82523d6000602084013e6200173a565b606091505b509150620017579050816200175188602062002de6565b62002757565b604051630667f9d760e41b815290925060009150600080516020620036ec8339815191529063667f9d709062001794908b90879060040162002b22565b6020604051808303816000875af1158015620017b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017da919062002cb6565b9050808214620017fe5760405162461bcd60e51b8152600401620007609062002e08565b6040516370ca10bb60e01b8152600080516020620036ec833981519152906370ca10bb9062001836908b9087908e9060040162002ea3565b600060405180830381600087803b1580156200185157600080fd5b505af115801562001866573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff191690556200189b60028b016000620027ef565b896004016000905550505050505050505050565b600080516020620036ec8339815191523b15620019a257604051600090600080516020620036ec833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4906200191d9083906519985a5b195960d21b9060019060200162002ea3565b60408051601f19818403018152908290526200193d929160200162002ceb565b60408051601f1981840301815290829052620019599162002c98565b6000604051808303816000865af19150503d806000811462001998576040519150601f19603f3d011682016040523d82523d6000602084013e6200199d565b606091505b505050505b6000805461ff001916610100179055565b6060600082516020620019c7919062002de6565b67ffffffffffffffff811115620019e257620019e2620028c6565b6040519080825280601f01601f19166020018201604052801562001a0d576020820181803683370190505b50905060005b83518110156200076957600084828151811062001a345762001a3462002ec4565b60200260200101519050808260200260200184015250808062001a579062002eda565b91505062001a13565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b94938793919290919083018282801562001ad257602002820191906000526020600020905b81548152602001906001019080831162001abd575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519596509491935062001b1e9250859187910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562001bbd576001600160a01b0384166000908152602087815260408083206001600160e01b0319871684528252808320905190929162001b8d91859187910162002daa565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008362001bcb83620019b3565b60405160200162001bde92919062002ceb565b60405160208183030381529060405290506000805160206200370c83398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001c3d57600080fd5b505af115801562001c52573d6000803e3d6000fd5b50505050600080866001600160a01b03168360405162001c73919062002c98565b600060405180830381855afa9150503d806000811462001cb0576040519150601f19603f3d011682016040523d82523d6000602084013e62001cb5565b606091505b50915062001ccc9050816200175187602062002de6565b6040516365bc948160e01b81526001600160a01b038916600482015290925060009150600080516020620036ec833981519152906365bc9481906024016000604051808303816000875af115801562001d29573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001d53919081019062002f7f565b50905080516001036200201c5760006000805160206200370c83398151915260001c6001600160a01b031663667f9d70898460008151811062001d9a5762001d9a62002ec4565b60200260200101516040518363ffffffff1660e01b815260040162001dc192919062002b22565b6020604051808303816000875af115801562001de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e07919062002cb6565b90508062001e6b577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5888360008151811062001e475762001e4762002ec4565b602002602001015160001c60405162001e6292919062002b22565b60405180910390a15b80831462001e8d5760405162461bcd60e51b8152600401620007609062002e08565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8888878960405160200162001ec592919062002daa565b604051602081830303815290604052805190602001208560008151811062001ef15762001ef162002ec4565b602002602001015160001c60405162001f0e949392919062002fe0565b60405180910390a18160008151811062001f2c5762001f2c62002ec4565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262001f77918a918c910162002daa565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c1685528252828420925190939162001fe1918a918c910162002daa565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff191691151591909117905550620025da565b600181511115620025695760005b8151811015620025625760006000805160206200370c83398151915260001c6001600160a01b031663667f9d708a8585815181106200206d576200206d62002ec4565b60200260200101516040518363ffffffff1660e01b81526004016200209492919062002b22565b6020604051808303816000875af1158015620020b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620020da919062002cb6565b9050806200213d577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58984848151811062002119576200211962002ec4565b602002602001015160001c6040516200213492919062002b22565b60405180910390a15b6000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8a85858151811062002174576200217462002ec4565b602002602001015161133760f01b6040518463ffffffff1660e01b8152600401620021a29392919062002ea3565b600060405180830381600087803b158015620021bd57600080fd5b505af1158015620021d2573d6000803e3d6000fd5b50505050600060608a6001600160a01b031687604051620021f4919062002c98565b600060405180830381855afa9150503d806000811462002231576040519150601f19603f3d011682016040523d82523d6000602084013e62002236565b606091505b5090925090506200224e81620017518b602062002de6565b955081801562002262575061133760f01b86145b15620024b5577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620022a092919062002daa565b60405160208183030381529060405280519060200120888881518110620022cb57620022cb62002ec4565b602002602001015160001c604051620022e8949392919062002fe0565b60405180910390a184848151811062002305576200230562002ec4565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f168352845280822090519293909262002350918d918f910162002daa565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620023dd92919062002daa565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8c8787815181106200244f576200244f62002ec4565b6020026020010151866040518463ffffffff1660e01b8152600401620024789392919062002ea3565b600060405180830381600087803b1580156200249357600080fd5b505af1158015620024a8573d6000803e3d6000fd5b5050505050505062002562565b6000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8c878781518110620024ec57620024ec62002ec4565b6020026020010151866040518463ffffffff1660e01b8152600401620025159392919062002ea3565b600060405180830381600087803b1580156200253057600080fd5b505af115801562002545573d6000803e3d6000fd5b505050505050508080620025599062002eda565b9150506200202a565b50620025da565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e606482015260840162000760565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519092916200261e9188918a910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff16620026ad5760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b606482015260840162000760565b6005890180546001600160a01b031916905560038901805463ffffffff19169055620026de60028a016000620027ef565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a16845282528083209051909291620027249188918a910162002daa565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b600080600060208551116200276e57845162002771565b60205b905060005b81811015620027d7576200278c81600862002de6565b8662002799838862002cd0565b81518110620027ac57620027ac62002ec4565b01602001516001600160f81b031916901c929092179180620027ce8162002eda565b91505062002776565b5090949350505050565b6106db806200301183390190565b50805460008255906000526020600020908101906200111291905b808211156200282057600081556001016200280a565b5090565b80356001600160a01b038116811462000e8e57600080fd5b600080604083850312156200285057600080fd5b6200285b8362002824565b946020939093013593505050565b6000602082840312156200287c57600080fd5b620028878262002824565b9392505050565b60008060408385031215620028a257600080fd5b620028ad8362002824565b9150620028bd6020840162002824565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715620029085762002908620028c6565b604052919050565b600067ffffffffffffffff8211156200292d576200292d620028c6565b50601f01601f191660200190565b6000620029526200294c8462002910565b620028dc565b90508281528383830111156200296757600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200299057600080fd5b62002887838335602085016200293b565b60008060408385031215620029b557600080fd5b823567ffffffffffffffff80821115620029ce57600080fd5b620029dc868387016200297e565b93506020850135915080821115620029f357600080fd5b508301601f8101851362002a0657600080fd5b62002a17858235602084016200293b565b9150509250929050565b60006020828403121562002a3457600080fd5b5035919050565b60008060006060848603121562002a5157600080fd5b62002a5c8462002824565b925062002a6c6020850162002824565b9150604084013590509250925092565b80151581146200111257600080fd5b6000806000806080858703121562002aa257600080fd5b62002aad8562002824565b935062002abd6020860162002824565b925060408501359150606085013562002ad68162002a7c565b939692955090935050565b60006020828403121562002af457600080fd5b813567ffffffffffffffff81111562002b0c57600080fd5b62002b1a848285016200297e565b949350505050565b6001600160a01b03929092168252602082015260400190565b60005b8381101562002b5857818101518382015260200162002b3e565b8381111562002b68576000848401525b50505050565b6000815180845262002b8881602086016020860162002b3b565b601f01601f19169290920160200192915050565b60208152600062002887602083018462002b6e565b600062002bc26200294c8462002910565b905082815283838301111562002bd757600080fd5b6200288783602083018462002b3b565b60006020828403121562002bfa57600080fd5b815167ffffffffffffffff81111562002c1257600080fd5b8201601f8101841362002c2457600080fd5b62002b1a8482516020840162002bb1565b6000835162002c4981846020880162002b3b565b83519083019062002c5f81836020880162002b3b565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b60008282101562002c935762002c9362002c68565b500390565b6000825162002cac81846020870162002b3b565b9190910192915050565b60006020828403121562002cc957600080fd5b5051919050565b6000821982111562002ce65762002ce662002c68565b500190565b6001600160e01b031983168152815160009062002d1081600485016020870162002b3b565b919091016004019392505050565b60006020828403121562002d3157600080fd5b8151620028878162002a7c565b60408152600a6040820152690808115e1c1958dd195960b21b606082015260806020820152600062002887608083018462002b6e565b60408152600a604082015269080808081058dd1d585b60b21b606082015260806020820152600062002887608083018462002b6e565b825160009082906020808701845b8381101562002dd65781518552938201939082019060010162002db8565b5050948252509092019392505050565b600081600019048311821515161562002e035762002e0362002c68565b500290565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6001600160a01b039390931683526020830191909152604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820162002eef5762002eef62002c68565b5060010190565b600082601f83011262002f0857600080fd5b8151602067ffffffffffffffff82111562002f275762002f27620028c6565b8160051b62002f38828201620028dc565b928352848101820192828101908785111562002f5357600080fd5b83870192505b8483101562002f745782518252918301919083019062002f59565b979650505050505050565b6000806040838503121562002f9357600080fd5b825167ffffffffffffffff8082111562002fac57600080fd5b62002fba8683870162002ef6565b9350602085015191508082111562002fd157600080fd5b5062002a178582860162002ef6565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe608060405234801561001057600080fd5b506040516106db3803806106db83398101604081905261002f916100f8565b8051610042906000906020840190610049565b5050610201565b828054610055906101c7565b90600052602060002090601f01602090048101928261007757600085556100bd565b82601f1061009057805160ff19168380011785556100bd565b828001600101855582156100bd579182015b828111156100bd5782518255916020019190600101906100a2565b506100c99291506100cd565b5090565b5b808211156100c957600081556001016100ce565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561010b57600080fd5b82516001600160401b038082111561012257600080fd5b818501915085601f83011261013657600080fd5b815181811115610148576101486100e2565b604051601f8201601f19908116603f01168101908382118183101715610170576101706100e2565b81604052828152888684870101111561018857600080fd5b600093505b828410156101aa578484018601518185018701529285019261018d565b828411156101bb5760008684830101525b98975050505050505050565b600181811c908216806101db57607f821691505b6020821081036101fb57634e487b7160e01b600052602260045260246000fd5b50919050565b6104cb806102106000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a41368621461003b578063cfae321714610050575b600080fd5b61004e610049366004610325565b61006e565b005b6100586100da565b60405161006591906103d6565b60405180910390f35b8051610081906000906020840190610276565b507f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b733326100ad61016c565b604080516001600160a01b039485168152928416602084015292168183015290519081900360600190a150565b6060600080546100e99061042b565b80601f01602080910402602001604051908101604052809291908181526020018280546101159061042b565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050905090565b6000804660010361018e57507325ace71c97b33cc4729cf772ae268934f7ab5fa15b46602a036101ad5750734361d0f75a0186c05f971c566dc6bea5957483fd5b466005036101cc5750735086d1eef304eb5284a0f6720f79403b4e9be2945b46600a14806101db5750466045145b806101e75750466101a4145b156101f657506007602160991b015b336001600160a01b0382161461020e57600091505090565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102709190610465565b91505090565b8280546102829061042b565b90600052602060002090601f0160209004810192826102a457600085556102ea565b82601f106102bd57805160ff19168380011785556102ea565b828001600101855582156102ea579182015b828111156102ea5782518255916020019190600101906102cf565b506102f69291506102fa565b5090565b5b808211156102f657600081556001016102fb565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561033757600080fd5b813567ffffffffffffffff8082111561034f57600080fd5b818401915084601f83011261036357600080fd5b8135818111156103755761037561030f565b604051601f8201601f19908116603f0116810190838211818310171561039d5761039d61030f565b816040528281528760208487010111156103b657600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015610403578581018301518582016040015282016103e7565b81811115610415576000604083870101525b50601f01601f1916929092016040019392505050565b600181811c9082168061043f57607f821691505b60208210810361045f57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561047757600080fd5b81516001600160a01b038116811461048e57600080fd5b939250505056fea26469706673582212202f95b0be980874e382fab7b6bfb6e2873bd4fef6880b9e29af096d03b3563ebf64736f6c634300080d00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12da2646970667358221220ed3456266d3e36a67748549c2958c504b8e0373856bc6701f01cc17c9db062e564736f6c634300080d0033", + "sourceMap": "153:953:8:-:0;;;1572:26:0;;;-1:-1:-1;;171:28:1;;;;;153:953:8;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x60806040523480156200001157600080fd5b5060043610620001695760003560e01c80639a8325a011620000d3578063d82555f11162000086578063d82555f1146200030b578063e31b08ca1462000322578063e9a79a7b146200032c578063ef84f4dd1462000343578063f8ccbf47146200034d578063fa7626d4146200036157600080fd5b80639a8325a0146200027d578063af9bbe5f1462000294578063b9c071b414620002ab578063ba414fa614620002c2578063c88a5e6d14620002dd578063d06d822914620002f457600080fd5b80632d6c17a3116200012c5780632d6c17a314620001f35780633a768463146200020a5780633bf82db114620002215780636bce989b14620002385780636f597075146200024f57806397754ae9146200026657600080fd5b80630a9254e4146200016e578063108554f2146200017a578063233240ee146200019157806329a9e30014620001a857806329ce9dde14620001bf575b600080fd5b620001786200036f565b005b620001786200018b3660046200283c565b620003d9565b62000178620001a236600462002869565b620004b2565b62000178620001b93660046200288e565b6200058e565b620001d6620001d0366004620029a1565b62000640565b6040516001600160a01b0390911681526020015b60405180910390f35b620001786200020436600462002a21565b62000770565b620001d6600080516020620036ec83398151915281565b620001786200023236600462002a3b565b620007b0565b620001786200024936600462002a3b565b62000892565b620001786200026036600462002869565b620008a6565b620001786200027736600462002a8b565b62000950565b620001d66200028e36600462002ae1565b62000b91565b62000178620002a536600462002a3b565b62000c93565b62000178620002bc36600462002a21565b62000d41565b620002cc62000d62565b6040519015158152602001620001ea565b62000178620002ee3660046200283c565b62000e93565b62000178620003053660046200288e565b62000ec9565b620001786200031c36600462002a3b565b62000f7b565b6200017862001072565b620001786200033d3660046200283c565b62001115565b62000178620011bb565b600054620002cc9062010000900460ff1681565b600054620002cc9060ff1681565b6040516200037d90620027e1565b60208082526005908201526468656c6c6f60d81b6040820152606001604051809103906000f080158015620003b6573d6000803e3d6000fd5b50600880546001600160a01b0319166001600160a01b0392909216919091179055565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200040f908590859060040162002b22565b600060405180830381600087803b1580156200042a57600080fd5b505af11580156200043f573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b0385166004820152600080516020620036ec83398151915292506306447d5691506024015b600060405180830381600087803b1580156200049557600080fd5b505af1158015620004aa573d6000803e3d6000fd5b505050505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620004ec908490600160801b9060040162002b22565b600060405180830381600087803b1580156200050757600080fd5b505af11580156200051c573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0384166004820152600080516020620036ec833981519152925063ca669fa791506024015b600060405180830381600087803b1580156200057257600080fd5b505af115801562000587573d6000803e3d6000fd5b5050505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620005c8908590600160801b9060040162002b22565b600060405180830381600087803b158015620005e357600080fd5b505af1158015620005f8573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b03808616600483015284166024820152600080516020620036ec83398151915292506347e50cce91506044016200047a565b604051638d1cc92560e01b81526000908190600080516020620036ec83398151915290638d1cc925906200067990879060040162002b9c565b6000604051808303816000875af115801562000699573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620006c3919081019062002be7565b83604051602001620006d792919062002c35565b60405160208183030381529060405290508051602082016000f091506001600160a01b038216620007695760405162461bcd60e51b815260206004820152603160248201527f54657374206465706c6f79436f646528737472696e672c6279746573293a204460448201527032b83637bcb6b2b73a103330b4b632b21760791b60648201526084015b60405180910390fd5b5092915050565b600080516020620036ec83398151915263e5d6bf0262000791834262002c7e565b6040518263ffffffff1660e01b81526004016200055791815260200190565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620007e6908690859060040162002b22565b600060405180830381600087803b1580156200080157600080fd5b505af115801562000816573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b03808716600483015285166024820152600080516020620036ec83398151915292506345b5607891506044015b600060405180830381600087803b1580156200087457600080fd5b505af115801562000889573d6000803e3d6000fd5b50505050505050565b620008a1838383600062000950565b505050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d90620008e0908490600160801b9060040162002b22565b600060405180830381600087803b158015620008fb57600080fd5b505af115801562000910573d6000803e3d6000fd5b50506040516303223eab60e11b81526001600160a01b0384166004820152600080516020620036ec83398151915292506306447d56915060240162000557565b604080516001600160a01b0385811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b1790529151600092871691620009a69162002c98565b6000604051808303816000865af19150503d8060008114620009e5576040519150601f19603f3d011682016040523d82523d6000602084013e620009ea565b606091505b5091505060008180602001905181019062000a06919062002cb6565b905062000a788462000a718762000a486370a0823160e01b62000a2b60018d620013c8565b9060038201805463ffffffff191660e09290921c91909117905590565b90600282018054600181018255600091825260209091206001600160a01b039290921691015590565b90620013ed565b8215620004aa5760408051600481526024810182526020810180516001600160e01b03166318160ddd60e01b17905290516000916001600160a01b0389169162000ac3919062002c98565b6000604051808303816000865af19150503d806000811462000b02576040519150601f19603f3d011682016040523d82523d6000602084013e62000b07565b606091505b5091505060008180602001905181019062000b23919062002cb6565b90508286101562000b4e5762000b3a868462002c7e565b62000b46908262002c7e565b905062000b69565b62000b5a838762002c7e565b62000b66908262002cd0565b90505b62000b878162000a716318160ddd60e01b62000a2b60018d620013c8565b5050505050505050565b604051638d1cc92560e01b81526000908190600080516020620036ec83398151915290638d1cc9259062000bca90869060040162002b9c565b6000604051808303816000875af115801562000bea573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000c14919081019062002be7565b90508051602082016000f091506001600160a01b03821662000c8d5760405162461bcd60e51b815260206004820152602b60248201527f54657374206465706c6f79436f646528737472696e67293a204465706c6f796d60448201526a32b73a103330b4b632b21760a91b606482015260840162000760565b50919050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d9062000cc9908690859060040162002b22565b600060405180830381600087803b15801562000ce457600080fd5b505af115801562000cf9573d6000803e3d6000fd5b50506040516323f2866760e11b81526001600160a01b03808716600483015285166024820152600080516020620036ec83398151915292506347e50cce915060440162000859565b600080516020620036ec83398151915263e5d6bf0262000791834262002cd0565b60008054610100900460ff161562000d835750600054610100900460ff1690565b6000600080516020620036ec8339815191523b1562000e8e57604051600090600080516020620036ec833981519152907f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc49062000df09083906519985a5b195960d21b9060200162002b22565b60408051601f198184030181529082905262000e10929160200162002ceb565b60408051601f198184030181529082905262000e2c9162002c98565b6000604051808303816000865af19150503d806000811462000e6b576040519150601f19603f3d011682016040523d82523d6000602084013e62000e70565b606091505b509150508080602001905181019062000e8a919062002d1e565b9150505b919050565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200047a908590859060040162002b22565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d9062000f03908590600160801b9060040162002b22565b600060405180830381600087803b15801562000f1e57600080fd5b505af115801562000f33573d6000803e3d6000fd5b50506040516308b6ac0f60e31b81526001600160a01b03808616600483015284166024820152600080516020620036ec83398151915292506345b5607891506044016200047a565b7f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358360405162001047906040808252600790820152665741524e494e4760c81b6060820152608060208201819052605e908201527f546573742074697028616464726573732c616464726573732c75696e7432353660a08201527f293a2054686520607469706020737464636865617420686173206265656e206460c08201527f6570726563617465642e2055736520606465616c6020696e73746561642e000060e08201526101000190565b60405180910390a1620008a18162000a718462000a486370a0823160e01b62000a2b60018a620013c8565b6008546040805163cfae321760e01b815290516060926001600160a01b03169163cfae32179160048083019260009291908290030181865afa158015620010bd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620010e7919081019062002be7565b905062001112816040518060400160405280600581526020016468656c6c6f60d81b815250620013fd565b50565b60405163c88a5e6d60e01b8152600080516020620036ec8339815191529063c88a5e6d906200114b908590859060040162002b22565b600060405180830381600087803b1580156200116657600080fd5b505af11580156200117b573d6000803e3d6000fd5b505060405163ca669fa760e01b81526001600160a01b0385166004820152600080516020620036ec833981519152925063ca669fa791506024016200047a565b60405163248e63e160e11b815260016004820181905260248201819052604482015260006064820152606090600080516020620036ec8339815191529063491cc7c290608401600060405180830381600087803b1580156200121c57600080fd5b505af115801562001231573d6000803e3d6000fd5b50506040805173b4c79dab8f259c7aee6e5b2aa729821864227e84815272a329c0648769a73afac7f9381e08fb43dbea72602082015260008183015290517f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b79350908190036060019150a1600854604051635209b43160e11b815260206004820152600c60248201526b4e6577204772656574696e6760a01b60448201526001600160a01b039091169063a413686290606401600060405180830381600087803b158015620012ff57600080fd5b505af115801562001314573d6000803e3d6000fd5b50505050600860009054906101000a90046001600160a01b03166001600160a01b031663cfae32176040518163ffffffff1660e01b8152600401600060405180830381865afa1580156200136c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001396919081019062002be7565b905062001112816040518060400160405280600c81526020016b4e6577204772656574696e6760a01b815250620013fd565b6005820180546001600160a01b0319166001600160a01b039290921691909117905590565b620013f9828262001546565b5050565b8060405160200162001410919062002c98565b604051602081830303815290604052805190602001208260405160200162001439919062002c98565b6040516020818303038152906040528051906020012014620013f9577f41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50604051620014c29060208082526024908201527f4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472604082015263696e675d60e01b606082015260800190565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf358381604051620014fb919062002d3e565b60405180910390a17f280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf35838260405162001534919062002d74565b60405180910390a1620013f9620018af565b600582015460038301546004840154600285018054604080516020808402820181019092528281526001600160a01b039096169560e09590951b9460009390929091830182828015620015b957602002820191906000526020600020905b815481526020019060010190808311620015a4575b50505050509050600083620015ce83620019b3565b604051602001620015e192919062002ceb565b60408051601f198184030181528282526001600160a01b038816600090815260018b0160209081528382206001600160e01b03198a1683528152928120919450909290916200163591869188910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff1662001670576200166e8762001a60565b505b6001600160a01b0385166000908152602088815260408083206001600160e01b0319881684528252808320905190918391620016b191879189910162002daa565b6040516020818303038152906040528051906020012081526020019081526020016000205460001b9050600080876001600160a01b031684604051620016f8919062002c98565b600060405180830381855afa9150503d806000811462001735576040519150601f19603f3d011682016040523d82523d6000602084013e6200173a565b606091505b509150620017579050816200175188602062002de6565b62002757565b604051630667f9d760e41b815290925060009150600080516020620036ec8339815191529063667f9d709062001794908b90879060040162002b22565b6020604051808303816000875af1158015620017b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017da919062002cb6565b9050808214620017fe5760405162461bcd60e51b8152600401620007609062002e08565b6040516370ca10bb60e01b8152600080516020620036ec833981519152906370ca10bb9062001836908b9087908e9060040162002ea3565b600060405180830381600087803b1580156200185157600080fd5b505af115801562001866573d6000803e3d6000fd5b50505060058b0180546001600160a01b03191690555060038a01805463ffffffff191690556200189b60028b016000620027ef565b896004016000905550505050505050505050565b600080516020620036ec8339815191523b15620019a257604051600090600080516020620036ec833981519152907f70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4906200191d9083906519985a5b195960d21b9060019060200162002ea3565b60408051601f19818403018152908290526200193d929160200162002ceb565b60408051601f1981840301815290829052620019599162002c98565b6000604051808303816000865af19150503d806000811462001998576040519150601f19603f3d011682016040523d82523d6000602084013e6200199d565b606091505b505050505b6000805461ff001916610100179055565b6060600082516020620019c7919062002de6565b67ffffffffffffffff811115620019e257620019e2620028c6565b6040519080825280601f01601f19166020018201604052801562001a0d576020820181803683370190505b50905060005b83518110156200076957600084828151811062001a345762001a3462002ec4565b60200260200101519050808260200260200184015250808062001a579062002eda565b91505062001a13565b600581015460038201546004830154600284018054604080516020808402820181019092528281526000966001600160a01b03169560e01b94938793919290919083018282801562001ad257602002820191906000526020600020905b81548152602001906001019080831162001abd575b5050506001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519596509491935062001b1e9250859187910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff161562001bbd576001600160a01b0384166000908152602087815260408083206001600160e01b0319871684528252808320905190929162001b8d91859187910162002daa565b60405160208183030381529060405280519060200120815260200190815260200160002054945050505050919050565b60008362001bcb83620019b3565b60405160200162001bde92919062002ceb565b60405160208183030381529060405290506000805160206200370c83398151915260001c6001600160a01b031663266cf1096040518163ffffffff1660e01b8152600401600060405180830381600087803b15801562001c3d57600080fd5b505af115801562001c52573d6000803e3d6000fd5b50505050600080866001600160a01b03168360405162001c73919062002c98565b600060405180830381855afa9150503d806000811462001cb0576040519150601f19603f3d011682016040523d82523d6000602084013e62001cb5565b606091505b50915062001ccc9050816200175187602062002de6565b6040516365bc948160e01b81526001600160a01b038916600482015290925060009150600080516020620036ec833981519152906365bc9481906024016000604051808303816000875af115801562001d29573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001d53919081019062002f7f565b50905080516001036200201c5760006000805160206200370c83398151915260001c6001600160a01b031663667f9d70898460008151811062001d9a5762001d9a62002ec4565b60200260200101516040518363ffffffff1660e01b815260040162001dc192919062002b22565b6020604051808303816000875af115801562001de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e07919062002cb6565b90508062001e6b577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5888360008151811062001e475762001e4762002ec4565b602002602001015160001c60405162001e6292919062002b22565b60405180910390a15b80831462001e8d5760405162461bcd60e51b8152600401620007609062002e08565b7f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8888878960405160200162001ec592919062002daa565b604051602081830303815290604052805190602001208560008151811062001ef15762001ef162002ec4565b602002602001015160001c60405162001f0e949392919062002fe0565b60405180910390a18160008151811062001f2c5762001f2c62002ec4565b6020908102919091018101516001600160a01b038a1660009081528c835260408082206001600160e01b03198c168352845280822090519293909262001f77918a918c910162002daa565b60408051601f1981840301815291815281516020928301208352828201939093529082016000908120939093556001600160a01b038b16835260018d810182528284206001600160e01b03198c1685528252828420925190939162001fe1918a918c910162002daa565b60408051808303601f19018152918152815160209283012083529082019290925201600020805460ff191691151591909117905550620025da565b600181511115620025695760005b8151811015620025625760006000805160206200370c83398151915260001c6001600160a01b031663667f9d708a8585815181106200206d576200206d62002ec4565b60200260200101516040518363ffffffff1660e01b81526004016200209492919062002b22565b6020604051808303816000875af1158015620020b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620020da919062002cb6565b9050806200213d577f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a58984848151811062002119576200211962002ec4565b602002602001015160001c6040516200213492919062002b22565b60405180910390a15b6000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8a85858151811062002174576200217462002ec4565b602002602001015161133760f01b6040518463ffffffff1660e01b8152600401620021a29392919062002ea3565b600060405180830381600087803b158015620021bd57600080fd5b505af1158015620021d2573d6000803e3d6000fd5b50505050600060608a6001600160a01b031687604051620021f4919062002c98565b600060405180830381855afa9150503d806000811462002231576040519150601f19603f3d011682016040523d82523d6000602084013e62002236565b606091505b5090925090506200224e81620017518b602062002de6565b955081801562002262575061133760f01b86145b15620024b5577f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed8b8b8a8c604051602001620022a092919062002daa565b60405160208183030381529060405280519060200120888881518110620022cb57620022cb62002ec4565b602002602001015160001c604051620022e8949392919062002fe0565b60405180910390a184848151811062002305576200230562002ec4565b6020908102919091018101516001600160a01b038d1660009081528f835260408082206001600160e01b03198f168352845280822090519293909262002350918d918f910162002daa565b6040516020818303038152906040528051906020012081526020019081526020016000208190555060018d60010160008d6001600160a01b03166001600160a01b0316815260200190815260200160002060008c6001600160e01b0319166001600160e01b031916815260200190815260200160002060008a8c604051602001620023dd92919062002daa565b60405160208183030381529060405280519060200120815260200190815260200160002060006101000a81548160ff0219169083151502179055506000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8c8787815181106200244f576200244f62002ec4565b6020026020010151866040518463ffffffff1660e01b8152600401620024789392919062002ea3565b600060405180830381600087803b1580156200249357600080fd5b505af1158015620024a8573d6000803e3d6000fd5b5050505050505062002562565b6000805160206200370c83398151915260001c6001600160a01b03166370ca10bb8c878781518110620024ec57620024ec62002ec4565b6020026020010151866040518463ffffffff1660e01b8152600401620025159392919062002ea3565b600060405180830381600087803b1580156200253057600080fd5b505af115801562002545573d6000803e3d6000fd5b505050505050508080620025599062002eda565b9150506200202a565b50620025da565b6040805162461bcd60e51b81526020600482015260248101919091527f73746453746f726167652066696e642853746453746f72616765293a204e6f2060448201527f73746f726167652075736520646574656374656420666f72207461726765742e606482015260840162000760565b6001600160a01b038716600090815260018a01602090815260408083206001600160e01b03198a168452825280832090519092916200261e9188918a910162002daa565b60408051601f198184030181529181528151602092830120835290820192909252016000205460ff16620026ad5760405162461bcd60e51b815260206004820152602f60248201527f73746453746f726167652066696e642853746453746f72616765293a20536c6f60448201526e3a143994903737ba103337bab7321760891b606482015260840162000760565b6005890180546001600160a01b031916905560038901805463ffffffff19169055620026de60028a016000620027ef565b600060048a018190556001600160a01b038816815260208a815260408083206001600160e01b03198a16845282528083209051909291620027249188918a910162002daa565b60405160208183030381529060405280519060200120815260200190815260200160002054975050505050505050919050565b600080600060208551116200276e57845162002771565b60205b905060005b81811015620027d7576200278c81600862002de6565b8662002799838862002cd0565b81518110620027ac57620027ac62002ec4565b01602001516001600160f81b031916901c929092179180620027ce8162002eda565b91505062002776565b5090949350505050565b6106db806200301183390190565b50805460008255906000526020600020908101906200111291905b808211156200282057600081556001016200280a565b5090565b80356001600160a01b038116811462000e8e57600080fd5b600080604083850312156200285057600080fd5b6200285b8362002824565b946020939093013593505050565b6000602082840312156200287c57600080fd5b620028878262002824565b9392505050565b60008060408385031215620028a257600080fd5b620028ad8362002824565b9150620028bd6020840162002824565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715620029085762002908620028c6565b604052919050565b600067ffffffffffffffff8211156200292d576200292d620028c6565b50601f01601f191660200190565b6000620029526200294c8462002910565b620028dc565b90508281528383830111156200296757600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200299057600080fd5b62002887838335602085016200293b565b60008060408385031215620029b557600080fd5b823567ffffffffffffffff80821115620029ce57600080fd5b620029dc868387016200297e565b93506020850135915080821115620029f357600080fd5b508301601f8101851362002a0657600080fd5b62002a17858235602084016200293b565b9150509250929050565b60006020828403121562002a3457600080fd5b5035919050565b60008060006060848603121562002a5157600080fd5b62002a5c8462002824565b925062002a6c6020850162002824565b9150604084013590509250925092565b80151581146200111257600080fd5b6000806000806080858703121562002aa257600080fd5b62002aad8562002824565b935062002abd6020860162002824565b925060408501359150606085013562002ad68162002a7c565b939692955090935050565b60006020828403121562002af457600080fd5b813567ffffffffffffffff81111562002b0c57600080fd5b62002b1a848285016200297e565b949350505050565b6001600160a01b03929092168252602082015260400190565b60005b8381101562002b5857818101518382015260200162002b3e565b8381111562002b68576000848401525b50505050565b6000815180845262002b8881602086016020860162002b3b565b601f01601f19169290920160200192915050565b60208152600062002887602083018462002b6e565b600062002bc26200294c8462002910565b905082815283838301111562002bd757600080fd5b6200288783602083018462002b3b565b60006020828403121562002bfa57600080fd5b815167ffffffffffffffff81111562002c1257600080fd5b8201601f8101841362002c2457600080fd5b62002b1a8482516020840162002bb1565b6000835162002c4981846020880162002b3b565b83519083019062002c5f81836020880162002b3b565b01949350505050565b634e487b7160e01b600052601160045260246000fd5b60008282101562002c935762002c9362002c68565b500390565b6000825162002cac81846020870162002b3b565b9190910192915050565b60006020828403121562002cc957600080fd5b5051919050565b6000821982111562002ce65762002ce662002c68565b500190565b6001600160e01b031983168152815160009062002d1081600485016020870162002b3b565b919091016004019392505050565b60006020828403121562002d3157600080fd5b8151620028878162002a7c565b60408152600a6040820152690808115e1c1958dd195960b21b606082015260806020820152600062002887608083018462002b6e565b60408152600a604082015269080808081058dd1d585b60b21b606082015260806020820152600062002887608083018462002b6e565b825160009082906020808701845b8381101562002dd65781518552938201939082019060010162002db8565b5050948252509092019392505050565b600081600019048311821515161562002e035762002e0362002c68565b500290565b6020808252606f908201527f73746453746f726167652066696e642853746453746f72616765293a2050616360408201527f6b656420736c6f742e205468697320776f756c642063617573652064616e676560608201527f726f7573206f76657277726974696e6720616e642063757272656e746c79206960808201526e39b713ba1039bab83837b93a32b21760891b60a082015260c00190565b6001600160a01b039390931683526020830191909152604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820162002eef5762002eef62002c68565b5060010190565b600082601f83011262002f0857600080fd5b8151602067ffffffffffffffff82111562002f275762002f27620028c6565b8160051b62002f38828201620028dc565b928352848101820192828101908785111562002f5357600080fd5b83870192505b8483101562002f745782518252918301919083019062002f59565b979650505050505050565b6000806040838503121562002f9357600080fd5b825167ffffffffffffffff8082111562002fac57600080fd5b62002fba8683870162002ef6565b9350602085015191508082111562002fd157600080fd5b5062002a178582860162002ef6565b6001600160a01b039490941684526001600160e01b0319929092166020840152604083015260608201526080019056fe608060405234801561001057600080fd5b506040516106db3803806106db83398101604081905261002f916100f8565b8051610042906000906020840190610049565b5050610201565b828054610055906101c7565b90600052602060002090601f01602090048101928261007757600085556100bd565b82601f1061009057805160ff19168380011785556100bd565b828001600101855582156100bd579182015b828111156100bd5782518255916020019190600101906100a2565b506100c99291506100cd565b5090565b5b808211156100c957600081556001016100ce565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561010b57600080fd5b82516001600160401b038082111561012257600080fd5b818501915085601f83011261013657600080fd5b815181811115610148576101486100e2565b604051601f8201601f19908116603f01168101908382118183101715610170576101706100e2565b81604052828152888684870101111561018857600080fd5b600093505b828410156101aa578484018601518185018701529285019261018d565b828411156101bb5760008684830101525b98975050505050505050565b600181811c908216806101db57607f821691505b6020821081036101fb57634e487b7160e01b600052602260045260246000fd5b50919050565b6104cb806102106000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a41368621461003b578063cfae321714610050575b600080fd5b61004e610049366004610325565b61006e565b005b6100586100da565b60405161006591906103d6565b60405180910390f35b8051610081906000906020840190610276565b507f2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b733326100ad61016c565b604080516001600160a01b039485168152928416602084015292168183015290519081900360600190a150565b6060600080546100e99061042b565b80601f01602080910402602001604051908101604052809291908181526020018280546101159061042b565b80156101625780601f1061013757610100808354040283529160200191610162565b820191906000526020600020905b81548152906001019060200180831161014557829003601f168201915b5050505050905090565b6000804660010361018e57507325ace71c97b33cc4729cf772ae268934f7ab5fa15b46602a036101ad5750734361d0f75a0186c05f971c566dc6bea5957483fd5b466005036101cc5750735086d1eef304eb5284a0f6720f79403b4e9be2945b46600a14806101db5750466045145b806101e75750466101a4145b156101f657506007602160991b015b336001600160a01b0382161461020e57600091505090565b806001600160a01b0316636e296e456040518163ffffffff1660e01b8152600401602060405180830381865afa15801561024c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102709190610465565b91505090565b8280546102829061042b565b90600052602060002090601f0160209004810192826102a457600085556102ea565b82601f106102bd57805160ff19168380011785556102ea565b828001600101855582156102ea579182015b828111156102ea5782518255916020019190600101906102cf565b506102f69291506102fa565b5090565b5b808211156102f657600081556001016102fb565b634e487b7160e01b600052604160045260246000fd5b60006020828403121561033757600080fd5b813567ffffffffffffffff8082111561034f57600080fd5b818401915084601f83011261036357600080fd5b8135818111156103755761037561030f565b604051601f8201601f19908116603f0116810190838211818310171561039d5761039d61030f565b816040528281528760208487010111156103b657600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208083528351808285015260005b81811015610403578581018301518582016040015282016103e7565b81811115610415576000604083870101525b50601f01601f1916929092016040019392505050565b600181811c9082168061043f57607f821691505b60208210810361045f57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561047757600080fd5b81516001600160a01b038116811461048e57600080fd5b939250505056fea26469706673582212202f95b0be980874e382fab7b6bfb6e2873bd4fef6880b9e29af096d03b3563ebf64736f6c634300080d00330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12da2646970667358221220ed3456266d3e36a67748549c2958c504b8e0373856bc6701f01cc17c9db062e564736f6c634300080d0033", + "sourceMap": "153:953:8:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;380:71;;;:::i;:::-;;2070:116:2;;;;;;:::i;:::-;;:::i;1417:96::-;;;;;;:::i;:::-;;:::i;1631:120::-;;;;;;:::i;:::-;;:::i;5142:455::-;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;2921:32:9;;;2903:51;;2891:2;2876:18;5142:455:2;;;;;;;;1269:85;;;;;;:::i;:::-;;:::i;322:38:1:-;;-1:-1:-1;;;;;;;;;;;322:38:1;;2441:140:2;;;;;;:::i;:::-;;:::i;3370:107::-;;;;;;:::i;:::-;;:::i;1958:106::-;;;;;;:::i;:::-;;:::i;3483:915::-;;;;;;:::i;:::-;;:::i;5603:406::-;;;;;;:::i;:::-;;:::i;1757:130::-;;;;;;:::i;:::-;;:::i;1180:83::-;;;;;;:::i;:::-;;:::i;1819:584:0:-;;;:::i;:::-;;;4780:14:9;;4773:22;4755:41;;4743:2;4728:18;1819:584:0;4615:187:9;3165:81:2;;;;;;:::i;:::-;;:::i;2305:130::-;;;;;;:::i;:::-;;:::i;2733:341::-;;;;;;:::i;:::-;;:::i;472:144:8:-;;;:::i;1519:106:2:-;;;;;;:::i;:::-;;:::i;642:439:8:-;;;:::i;171:28:1:-;;;;;;;;;;;;1572:26:0;;;;;;;;;380:71:8;424:20;;;;;:::i;:::-;5009:2:9;4991:21;;;5048:1;5028:18;;;5021:29;-1:-1:-1;;;5081:2:9;5066:18;;5059:35;5126:2;5111:18;424:20:8;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;414:7:8;:30;;-1:-1:-1;;;;;;414:30:8;-1:-1:-1;;;;;414:30:8;;;;;;;;;;380:71::o;2070:116:2:-;2133:18;;-1:-1:-1;;;2133:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2133:7:2;;:18;;2141:3;;2146:4;;2133:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2161:18:2;;-1:-1:-1;;;2161:18:2;;-1:-1:-1;;;;;2921:32:9;;2161:18:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2161:13:2;;-1:-1:-1;2876:18:9;;2161::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2070:116;;:::o;1417:96::-;1461:22;;-1:-1:-1;;;1461:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1461:7:2;;:22;;1469:3;;-1:-1:-1;;;1474:8:2;1461:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1493:13:2;;-1:-1:-1;;;1493:13:2;;-1:-1:-1;;;;;2921:32:9;;1493:13:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1493:8:2;;-1:-1:-1;2876:18:9;;1493:13:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1417:96;:::o;1631:120::-;1691:22;;-1:-1:-1;;;1691:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1691:7:2;;:22;;1699:3;;-1:-1:-1;;;1704:8:2;1691:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1723:21:2;;-1:-1:-1;;;1723:21:2;;-1:-1:-1;;;;;5974:15:9;;;1723:21:2;;;5956:34:9;6026:15;;6006:18;;;5999:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1723:8:2;;-1:-1:-1;5891:18:9;;1723:21:2;5744:304:9;5142:455:2;5302:16;;-1:-1:-1;;;5302:16:2;;5233:12;;;;-1:-1:-1;;;;;;;;;;;251:64:1;5302:10:2;;:16;;5313:4;;5302:16;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5302:16:2;;;;;;;;;;;;:::i;:::-;5320:4;5285:40;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5261:64;;5446:8;5440:15;5433:4;5423:8;5419:19;5416:1;5409:47;5401:55;-1:-1:-1;;;;;;5497:18:2;;5476:114;;;;-1:-1:-1;;;5476:114:2;;8252:2:9;5476:114:2;;;8234:21:9;8291:2;8271:18;;;8264:30;8330:34;8310:18;;;8303:62;-1:-1:-1;;;8381:18:9;;;8374:47;8438:19;;5476:114:2;;;;;;;;;5251:346;5142:455;;;;:::o;1269:85::-;-1:-1:-1;;;;;;;;;;;1316:7:2;1324:22;1342:4;1324:15;:22;:::i;:::-;1316:31;;;;;;;;;;;;;8876:25:9;;8864:2;8849:18;;8730:177;2441:140:2;2520:18;;-1:-1:-1;;;2520:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2520:7:2;;:18;;2528:3;;2533:4;;2520:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2548:26:2;;-1:-1:-1;;;2548:26:2;;-1:-1:-1;;;;;5974:15:9;;;2548:26:2;;;5956:34:9;6026:15;;6006:18;;;5999:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2548:13:2;;-1:-1:-1;5891:18:9;;2548:26:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2441:140;;;:::o;3370:107::-;3442:28;3447:5;3454:2;3458:4;3464:5;3442:4;:28::i;:::-;3370:107;;;:::o;1958:106::-;2007:22;;-1:-1:-1;;;2007:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2007:7:2;;:22;;2015:3;;-1:-1:-1;;;2020:8:2;2007:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2039:18:2;;-1:-1:-1;;;2039:18:2;;-1:-1:-1;;;;;2921:32:9;;2039:18:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2039:13:2;;-1:-1:-1;2876:18:9;;2039::2;2757:203:9;3483:915:2;3637:38;;;-1:-1:-1;;;;;2921:32:9;;;3637:38:2;;;;2903:51:9;;;;3637:38:2;;;;;;;;;;2876:18:9;;;;3637:38:2;;;;;;;-1:-1:-1;;;;;3637:38:2;-1:-1:-1;;;3637:38:2;;;3626:50;;3602:20;;3626:10;;;:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3599:77;;;3686:15;3715:7;3704:30;;;;;;;;;;;;:::i;:::-;3686:48;-1:-1:-1;3771:123:2;3889:4;3771:90;3858:2;3771:64;-1:-1:-1;;;3771:35:2;:8;3800:5;3771:28;:35::i;:::-;:52;19603:9;;;:16;;-1:-1:-1;;19603:16:2;;;;;;;;;;;;:9;19504:143;3771:64;:86;19919:10;;;:47;;;;;;;-1:-1:-1;19919:47:2;;;;;;;-1:-1:-1;;;;;19943:21:2;;;;19919:47;;;:10;19815:179;3771:90;:117;;:123::i;:::-;3939:6;3936:456;;;4001:34;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4001:34:2;-1:-1:-1;;;4001:34:2;;;3990:46;;3963:23;;-1:-1:-1;;;;;3990:10:2;;;:46;;4001:34;3990:46;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3960:76;;;4050:14;4078:10;4067:33;;;;;;;;;;;;:::i;:::-;4050:50;;4124:7;4117:4;:14;4114:143;;;4162:14;4172:4;4162:7;:14;:::i;:::-;4151:26;;;;:::i;:::-;;;4114:143;;;4227:14;4234:7;4227:4;:14;:::i;:::-;4216:26;;;;:::i;:::-;;;4114:143;4270:111;4374:6;4270:72;-1:-1:-1;;;4270:39:2;:8;4303:5;4270:32;:39::i;:111::-;3946:446;;3558:840;;3483:915;;;;:::o;5603:406::-;5727:16;;-1:-1:-1;;;5727:16:2;;5675:12;;;;-1:-1:-1;;;;;;;;;;;251:64:1;5727:10:2;;:16;;5738:4;;5727:16;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5727:16:2;;;;;;;;;;;;:::i;:::-;5703:40;;5864:8;5858:15;5851:4;5841:8;5837:19;5834:1;5827:47;5819:55;-1:-1:-1;;;;;;5915:18:2;;5894:108;;;;-1:-1:-1;;;5894:108:2;;9715:2:9;5894:108:2;;;9697:21:9;9754:2;9734:18;;;9727:30;9793:34;9773:18;;;9766:62;-1:-1:-1;;;9844:18:9;;;9837:41;9895:19;;5894:108:2;9513:407:9;5894:108:2;5693:316;5603:406;;;:::o;1757:130::-;1831:18;;-1:-1:-1;;;1831:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1831:7:2;;:18;;1839:3;;1844:4;;1831:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1859:21:2;;-1:-1:-1;;;1859:21:2;;-1:-1:-1;;;;;5974:15:9;;;1859:21:2;;;5956:34:9;6026:15;;6006:18;;;5999:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1859:8:2;;-1:-1:-1;5891:18:9;;1859:21:2;5744:304:9;1180:83:2;-1:-1:-1;;;;;;;;;;;1225:7:2;1233:22;1251:4;1233:15;:22;:::i;1819:584:0:-;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;1980:374;;2196:43;;2023:20;;-1:-1:-1;;;;;;;;;;;1671:64:0;2135:34;;2196:43;;1671:64;;-1:-1:-1;;;2221:17:0;2196:43;;;:::i;:::-;;;;-1:-1:-1;;2196:43:0;;;;;;;;;;2086:175;;;2196:43;2086:175;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;3165:81:2:-;3222:17;;-1:-1:-1;;;3222:17:2;;-1:-1:-1;;;;;;;;;;;251:64:1;3222:7:2;;:17;;3230:2;;3234:4;;3222:17;;;:::i;2305:130::-;2370:22;;-1:-1:-1;;;2370:22:2;;-1:-1:-1;;;;;;;;;;;251:64:1;2370:7:2;;:22;;2378:3;;-1:-1:-1;;;2383:8:2;2370:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2402:26:2;;-1:-1:-1;;;2402:26:2;;-1:-1:-1;;;;;5974:15:9;;;2402:26:2;;;5956:34:9;6026:15;;6006:18;;;5999:43;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;2402:13:2;;-1:-1:-1;5891:18:9;;2402:26:2;5744:304:9;2733:341:2;2809:125;;;;;11133:2:9;11115:21;;;11172:1;11152:18;;;11145:29;-1:-1:-1;;;11205:2:9;11190:18;;11183:37;11258:3;11251:4;11236:20;;11229:33;;;11299:2;11278:19;;;11271:31;11339:34;11333:3;11318:19;;11311:63;11411:34;11405:3;11390:19;;11383:63;11483:32;11477:3;11462:19;;11455:61;11548:3;11533:19;;10830:728;2809:125:2;;;;;;;;2944:123;3062:4;2944:90;3031:2;2944:64;-1:-1:-1;;;2944:35:2;:8;2973:5;2944:28;:35::i;472:144:8:-;557:7;;:15;;;-1:-1:-1;;;557:15:8;;;;513:22;;-1:-1:-1;;;;;557:7:8;;:13;;:15;;;;;:7;;:15;;;;;;;:7;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;557:15:8;;;;;;;;;;;;:::i;:::-;546:26;;582:27;591:8;582:27;;;;;;;;;;;;;-1:-1:-1;;;582:27:8;;;:8;:27::i;:::-;503:113;472:144::o;1519:106:2:-;1577:18;;-1:-1:-1;;;1577:18:2;;-1:-1:-1;;;;;;;;;;;251:64:1;1577:7:2;;:18;;1585:3;;1590:4;;1577:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1605:13:2;;-1:-1:-1;;;1605:13:2;;-1:-1:-1;;;;;2921:32:9;;1605:13:2;;;2903:51:9;-1:-1:-1;;;;;;;;;;;251:64:1;-1:-1:-1;1605:8:2;;-1:-1:-1;2876:18:9;;1605:13:2;2757:203:9;642:439:8;719:38;;-1:-1:-1;;;719:38:8;;733:4;719:38;;;12233:41:9;;;12290:18;;;12283:50;;;12349:18;;;12342:50;275:37:1;12408:18:9;;;12401:50;686:22:8;;-1:-1:-1;;;;;;;;;;;251:64:1;719:13:8;;12205:19:9;;719:38:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;772:177:8;;;805:42;12702:34:9;;871:42:8;12767:2:9;12752:18;;12745:43;-1:-1:-1;12804:18:9;;;12797:43;772:177:8;;;;-1:-1:-1;772:177:8;;;;12652:2:9;772:177:8;;-1:-1:-1;772:177:8;959:7;;:35;;-1:-1:-1;;;959:35:8;;13053:2:9;959:35:8;;;13035:21:9;13092:2;13072:18;;;13065:30;-1:-1:-1;;;13111:18:9;;;13104:42;-1:-1:-1;;;;;959:7:8;;;;:19;;13163:18:9;;959:35:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1015:7;;;;;;;;;-1:-1:-1;;;;;1015:7:8;-1:-1:-1;;;;;1015:13:8;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1015:15:8;;;;;;;;;;;;:::i;:::-;1004:26;;1040:34;1049:8;1040:34;;;;;;;;;;;;;-1:-1:-1;;;1040:34:8;;;:8;:34::i;19342:156:2:-;19448:12;;;:22;;-1:-1:-1;;;;;;19448:22:2;-1:-1:-1;;;;;19448:22:2;;;;;;;;;;:12;19342:156::o;20626:120::-;20706:33;20720:4;20734:3;20706:13;:33::i;:::-;20626:120;;:::o;14688:344:0:-;14824:1;14807:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;14797:30;;;;;;14790:1;14773:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;14763:30;;;;;;:64;14759:267;;14848:43;;;;;13675:2:9;13657:21;;;13714:2;13694:18;;;13687:30;13753:34;13748:2;13733:18;;13726:62;-1:-1:-1;;;13819:2:9;13804:18;;13797:34;13863:3;13848:19;;13473:400;14848:43:0;;;;;;;;14910:33;14941:1;14910:33;;;;;;:::i;:::-;;;;;;;;14962;14993:1;14962:33;;;;;;:::i;:::-;;;;;;;;15009:6;:4;:6::i;20980:1089:2:-;21096:12;;;;21132:9;;;;21173:11;;;;21217:10;;;21194:33;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21096:12:2;;;;21132:9;;;;;;21082:11;;21194:33;;21217:10;;21194:33;;21217:10;21194:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21238:17;21275:4;21281:12;21289:3;21281:7;:12::i;:::-;21258:36;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;21258:36:2;;;;;;;;;-1:-1:-1;;;;;21309:15:2;;;;;;:10;;;21258:36;21309:15;;;;;;-1:-1:-1;;;;;;21309:21:2;;;;;;;;;21258:36;;-1:-1:-1;21309:21:2;;:15;;21341:34;;21358:3;;21363:11;;21341:34;;:::i;:::-;;;;-1:-1:-1;;21341:34:2;;;;;;;;;21331:45;;21341:34;21331:45;;;;21309:68;;;;;;;;;;-1:-1:-1;21309:68:2;;;;21304:110;;21393:10;21398:4;21393;:10::i;:::-;;21304:110;-1:-1:-1;;;;;21446:15:2;;21423:12;21446:15;;;;;;;;;;;-1:-1:-1;;;;;;21446:21:2;;;;;;;;;21478:34;;21446:21;;21423:12;;21478:34;;21495:3;;21500:11;;21478:34;;:::i;:::-;;;;;;;;;;;;;21468:45;;;;;;21446:68;;;;;;;;;;;;21438:77;;21423:92;;21526:12;21565:17;21586:3;-1:-1:-1;;;;;21586:14:2;21601:4;21586:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21562:44:2;-1:-1:-1;21627:36:2;;-1:-1:-1;21562:44:2;21648:14;21651:11;21648:2;:14;:::i;:::-;21627;:36::i;:::-;21698:28;;-1:-1:-1;;;21698:28:2;;21620:43;;-1:-1:-1;21683:12:2;;-1:-1:-1;;;;;;;;;;;;21698:17:2;;;:28;;21716:3;;21721:4;;21698:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21683:43;;21749:4;21741;:12;21737:172;;21769:129;;-1:-1:-1;;;21769:129:2;;;;;;;:::i;:::-;21918:34;;-1:-1:-1;;;21918:34:2;;-1:-1:-1;;;;;;;;;;;21918:18:2;;;:34;;21937:3;;21942:4;;21948:3;;21918:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;21969:12:2;;;21962:19;;-1:-1:-1;;;;;;21962:19:2;;;-1:-1:-1;21998:9:2;;;21991:16;;-1:-1:-1;;21991:16:2;;;22017:17;-1:-1:-1;22024:10:2;;21969:12;22017:17;:::i;:::-;22051:4;:11;;22044:18;;;21072:997;;;;;;;;20980:1089;;:::o;2410:424:0:-;-1:-1:-1;;;;;;;;;;;2978:55:0;3059:16;2445:359;;2645:67;;2482:11;;-1:-1:-1;;;;;;;;;;;1671:64:0;2579:43;;2645:67;;1671:64;;-1:-1:-1;;;2670:17:0;2705:4;;2645:67;;;:::i;:::-;;;;-1:-1:-1;;2645:67:0;;;;;;;;;;2534:196;;;2645:67;2534:196;;:::i;:::-;;;;-1:-1:-1;;2534:196:0;;;;;;;;;;2499:245;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;2445:359:0;2813:7;:14;;-1:-1:-1;;2813:14:0;;;;;2410:424::o;23413:397:2:-;23472:12;23500:19;23532:1;:8;23543:2;23532:13;;;;:::i;:::-;23522:24;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23522:24:2;;23500:46;;23561:9;23556:224;23580:1;:8;23576:1;:12;23556:224;;;23609:9;23621:1;23623;23621:4;;;;;;;;:::i;:::-;;;;;;;23609:16;;23754:1;23748;23744:2;23740:10;23736:2;23732:19;23724:6;23720:32;23713:43;23695:75;23590:3;;;;;:::i;:::-;;;;23556:224;;16122:3214;16246:12;;;;16282:9;;;;16323:11;;;;16367:10;;;16344:33;;;;;;;;;;;;;;;;;;;16209:7;;-1:-1:-1;;;;;16246:12:2;;16282:9;;;16323:11;16209:7;;16344:33;;16367:10;;16344:33;;;16367:10;16344:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;16428:15:2;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;16428:21:2;;;;;;;;;16460:34;;16344:33;;-1:-1:-1;16428:21:2;:15;;-1:-1:-1;16460:34:2;;-1:-1:-1;16344:33:2;;16482:11;;16460:34;;:::i;:::-;;;;-1:-1:-1;;16460:34:2;;;;;;;;;16450:45;;16460:34;16450:45;;;;16428:68;;;;;;;;;;-1:-1:-1;16428:68:2;;;;16424:174;;;-1:-1:-1;;;;;16519:15:2;;:10;:15;;;;;;;;;;;-1:-1:-1;;;;;;16519:21:2;;;;;;;;;16551:34;;16519:21;;:10;16551:34;;16568:3;;16573:11;;16551:34;;:::i;:::-;;;;;;;;;;;;;16541:45;;;;;;16519:68;;;;;;;;;;;;16512:75;;;;;;16122:3214;;;:::o;16424:174::-;16607:17;16644:4;16650:12;16658:3;16650:7;:12::i;:::-;16627:36;;;;;;;;;:::i;:::-;;;;;;;;;;;;;16607:56;;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;16673:19:2;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16704:12;16743:17;16764:3;-1:-1:-1;;;;;16764:14:2;16779:4;16764:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16740:44:2;-1:-1:-1;16805:36:2;;-1:-1:-1;16740:44:2;16826:14;16829:11;16826:2;:14;:::i;16805:36::-;16891:35;;-1:-1:-1;;;16891:35:2;;-1:-1:-1;;;;;2921:32:9;;16891:35:2;;;2903:51:9;16798:43:2;;-1:-1:-1;16863:22:2;;-1:-1:-1;;;;;;;;;;;;16891:21:2;;;2876:18:9;;16891:35:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16891:35:2;;;;;;;;;;;;:::i;:::-;16862:64;;;16940:5;:12;16956:1;16940:17;16936:2058;;16973:12;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;16988:17:2;;17006:3;17011:5;17017:1;17011:8;;;;;;;;:::i;:::-;;;;;;;16988:32;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16973:47;-1:-1:-1;16973:47:2;17034:106;;17081:44;17102:3;17115:5;17121:1;17115:8;;;;;;;;:::i;:::-;;;;;;;17107:17;;17081:44;;;;;;;:::i;:::-;;;;;;;;17034:106;17165:4;17157;:12;17153:180;;17189:129;;-1:-1:-1;;;17189:129:2;;;;;;;:::i;:::-;17351:86;17361:3;17366:4;17399:3;17404:11;17382:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;17372:45;;;;;;17427:5;17433:1;17427:8;;;;;;;;:::i;:::-;;;;;;;17419:17;;17351:86;;;;;;;;;:::i;:::-;;;;;;;;17530:5;17536:1;17530:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;17451:15:2;;17522:17;17451:15;;;;;;;;;;-1:-1:-1;;;;;;17451:21:2;;;;;;;;;17483:34;;17530:8;;17451:21;;17483:34;;17500:3;;17505:11;;17483:34;;:::i;:::-;;;;-1:-1:-1;;17483:34:2;;;;;;;;;17473:45;;17483:34;17473:45;;;;17451:68;;;;;;;;;;;;-1:-1:-1;17451:68:2;;;:88;;;;-1:-1:-1;;;;;17553:15:2;;;;17624:4;17553:10;;;:15;;;;;-1:-1:-1;;;;;;17553:21:2;;;;;;;;;17585:34;;17624:4;;-1:-1:-1;17585:34:2;;17602:3;;17607:11;;17585:34;;:::i;:::-;;;;;;;-1:-1:-1;;17585:34:2;;;;;;17575:45;;17585:34;17575:45;;;;17553:68;;;;;;;;;;-1:-1:-1;17553:68:2;:75;;-1:-1:-1;;17553:75:2;;;;;;;;;;-1:-1:-1;16936:2058:2;;;17664:1;17649:5;:12;:16;17645:1349;;;17686:9;17681:1190;17705:5;:12;17701:1;:16;17681:1190;;;17742:12;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;17757:17:2;;17775:3;17780:5;17786:1;17780:8;;;;;;;;:::i;:::-;;;;;;;17757:32;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17742:47;-1:-1:-1;17742:47:2;17807:114;;17858:44;17879:3;17892:5;17898:1;17892:8;;;;;;;;:::i;:::-;;;;;;;17884:17;;17858:44;;;;;;;:::i;:::-;;;;;;;;17807:114;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;17963:18:2;;17982:3;17987:5;17993:1;17987:8;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;17963:53:2;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18034:12;18064:17;18139:3;-1:-1:-1;;;;;18139:14:2;18154:4;18139:20;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18121:38:2;;-1:-1:-1;18121:38:2;-1:-1:-1;18188:36:2;18121:38;18209:14;18212:11;18209:2;:14;:::i;18188:36::-;18181:43;;18265:7;:37;;;;;-1:-1:-1;;;18276:4:2;:26;18265:37;18261:539;;;18400:86;18410:3;18415:4;18448:3;18453:11;18431:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18421:45;;;;;;18476:5;18482:1;18476:8;;;;;;;;:::i;:::-;;;;;;;18468:17;;18400:86;;;;;;;;;:::i;:::-;;;;;;;;18587:5;18593:1;18587:8;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;18508:15:2;;18579:17;18508:15;;;;;;;;;;-1:-1:-1;;;;;;18508:21:2;;;;;;;;;18540:34;;18587:8;;18508:21;;18540:34;;18557:3;;18562:11;;18540:34;;:::i;:::-;;;;;;;;;;;;;18530:45;;;;;;18508:68;;;;;;;;;;;:88;;;;18689:4;18618;:10;;:15;18629:3;-1:-1:-1;;;;;18618:15:2;-1:-1:-1;;;;;18618:15:2;;;;;;;;;;;;:21;18634:4;-1:-1:-1;;;;;18618:21:2;;-1:-1:-1;;;;;18618:21:2;;;;;;;;;;;;;:68;18667:3;18672:11;18650:34;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18640:45;;;;;;18618:68;;;;;;;;;;;;:75;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;18715:18:2;;18734:3;18739:5;18745:1;18739:8;;;;;;;;:::i;:::-;;;;;;;18749:4;18715:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18776:5;;;;;18261:539;-1:-1:-1;;;;;;;;;;;15396:37:2;;-1:-1:-1;;;;;18817:18:2;;18836:3;18841:5;18847:1;18841:8;;;;;;;;:::i;:::-;;;;;;;18851:4;18817:39;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17724:1147;;;17719:3;;;;;:::i;:::-;;;;17681:1190;;;;17645:1349;;;18901:82;;;-1:-1:-1;;;18901:82:2;;18934:2:9;18901:82:2;;;18916:21:9;18953:18;;;18946:30;;;;19012:34;18992:18;;;18985:62;19083:34;19063:18;;;19056:62;19135:19;;18901:82:2;18732:428:9;18901:82:2;-1:-1:-1;;;;;19012:15:2;;;;;;:10;;;:15;;;;;;;;-1:-1:-1;;;;;;19012:21:2;;;;;;;;;19044:34;;19012:21;;:15;19044:34;;19061:3;;19066:11;;19044:34;;:::i;:::-;;;;-1:-1:-1;;19044:34:2;;;;;;;;;19034:45;;19044:34;19034:45;;;;19012:68;;;;;;;;;;-1:-1:-1;19012:68:2;;;;19004:128;;;;-1:-1:-1;;;19004:128:2;;19367:2:9;19004:128:2;;;19349:21:9;19406:2;19386:18;;;19379:30;19445:34;19425:18;;;19418:62;-1:-1:-1;;;19496:18:9;;;19489:45;19551:19;;19004:128:2;19165:411:9;19004:128:2;19150:12;;;19143:19;;-1:-1:-1;;;;;;19143:19:2;;;19179:9;;;19172:16;;-1:-1:-1;;19172:16:2;;;19198:17;-1:-1:-1;19205:10:2;;19150:12;19198:17;:::i;:::-;19225:18;19232:11;;;19225:18;;;-1:-1:-1;;;;;19261:15:2;;;;;;;;;;;;-1:-1:-1;;;;;;19261:21:2;;;;;;;;;19293:34;;19261:21;;19225:18;19293:34;;19310:3;;19315:11;;19293:34;;:::i;:::-;;;;;;;;;;;;;19283:45;;;;;;19261:68;;;;;;;;;;;;19254:75;;;;;;;;;16122:3214;;;:::o;23110:297::-;23184:7;23203:11;23225;23250:2;23239:1;:8;:13;:29;;23260:1;:8;23239:29;;;23255:2;23239:29;23225:43;;23283:6;23278:103;23299:3;23295:1;:7;23278:103;;;23364:5;:1;23368;23364:5;:::i;:::-;23338:1;23340:10;23349:1;23340:6;:10;:::i;:::-;23338:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;23338:13:2;23330:40;;23323:47;;;;;23304:3;;;;:::i;:::-;;;;23278:103;;;-1:-1:-1;23397:3:2;;23110:297;-1:-1:-1;;;;23110:297:2:o;-1:-1:-1:-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:173:9:-;82:20;;-1:-1:-1;;;;;131:31:9;;121:42;;111:70;;177:1;174;167:12;192:254;260:6;268;321:2;309:9;300:7;296:23;292:32;289:52;;;337:1;334;327:12;289:52;360:29;379:9;360:29;:::i;:::-;350:39;436:2;421:18;;;;408:32;;-1:-1:-1;;;192:254:9:o;451:186::-;510:6;563:2;551:9;542:7;538:23;534:32;531:52;;;579:1;576;569:12;531:52;602:29;621:9;602:29;:::i;:::-;592:39;451:186;-1:-1:-1;;;451:186:9:o;642:260::-;710:6;718;771:2;759:9;750:7;746:23;742:32;739:52;;;787:1;784;777:12;739:52;810:29;829:9;810:29;:::i;:::-;800:39;;858:38;892:2;881:9;877:18;858:38;:::i;:::-;848:48;;642:260;;;;;:::o;907:127::-;968:10;963:3;959:20;956:1;949:31;999:4;996:1;989:15;1023:4;1020:1;1013:15;1039:275;1110:2;1104:9;1175:2;1156:13;;-1:-1:-1;;1152:27:9;1140:40;;1210:18;1195:34;;1231:22;;;1192:62;1189:88;;;1257:18;;:::i;:::-;1293:2;1286:22;1039:275;;-1:-1:-1;1039:275:9:o;1319:187::-;1368:4;1401:18;1393:6;1390:30;1387:56;;;1423:18;;:::i;:::-;-1:-1:-1;1489:2:9;1468:15;-1:-1:-1;;1464:29:9;1495:4;1460:40;;1319:187::o;1511:338::-;1576:5;1605:53;1621:36;1650:6;1621:36;:::i;:::-;1605:53;:::i;:::-;1596:62;;1681:6;1674:5;1667:21;1721:3;1712:6;1707:3;1703:16;1700:25;1697:45;;;1738:1;1735;1728:12;1697:45;1787:6;1782:3;1775:4;1768:5;1764:16;1751:43;1841:1;1834:4;1825:6;1818:5;1814:18;1810:29;1803:40;1511:338;;;;;:::o;1854:222::-;1897:5;1950:3;1943:4;1935:6;1931:17;1927:27;1917:55;;1968:1;1965;1958:12;1917:55;1990:80;2066:3;2057:6;2044:20;2037:4;2029:6;2025:17;1990:80;:::i;2081:671::-;2168:6;2176;2229:2;2217:9;2208:7;2204:23;2200:32;2197:52;;;2245:1;2242;2235:12;2197:52;2285:9;2272:23;2314:18;2355:2;2347:6;2344:14;2341:34;;;2371:1;2368;2361:12;2341:34;2394:50;2436:7;2427:6;2416:9;2412:22;2394:50;:::i;:::-;2384:60;;2497:2;2486:9;2482:18;2469:32;2453:48;;2526:2;2516:8;2513:16;2510:36;;;2542:1;2539;2532:12;2510:36;-1:-1:-1;2565:24:9;;2620:4;2612:13;;2608:27;-1:-1:-1;2598:55:9;;2649:1;2646;2639:12;2598:55;2672:74;2738:7;2733:2;2720:16;2715:2;2711;2707:11;2672:74;:::i;:::-;2662:84;;;2081:671;;;;;:::o;2965:180::-;3024:6;3077:2;3065:9;3056:7;3052:23;3048:32;3045:52;;;3093:1;3090;3083:12;3045:52;-1:-1:-1;3116:23:9;;2965:180;-1:-1:-1;2965:180:9:o;3369:328::-;3446:6;3454;3462;3515:2;3503:9;3494:7;3490:23;3486:32;3483:52;;;3531:1;3528;3521:12;3483:52;3554:29;3573:9;3554:29;:::i;:::-;3544:39;;3602:38;3636:2;3625:9;3621:18;3602:38;:::i;:::-;3592:48;;3687:2;3676:9;3672:18;3659:32;3649:42;;3369:328;;;;;:::o;3702:118::-;3788:5;3781:13;3774:21;3767:5;3764:32;3754:60;;3810:1;3807;3800:12;3825:458;3908:6;3916;3924;3932;3985:3;3973:9;3964:7;3960:23;3956:33;3953:53;;;4002:1;3999;3992:12;3953:53;4025:29;4044:9;4025:29;:::i;:::-;4015:39;;4073:38;4107:2;4096:9;4092:18;4073:38;:::i;:::-;4063:48;;4158:2;4147:9;4143:18;4130:32;4120:42;;4212:2;4201:9;4197:18;4184:32;4225:28;4247:5;4225:28;:::i;:::-;3825:458;;;;-1:-1:-1;3825:458:9;;-1:-1:-1;;3825:458:9:o;4288:322::-;4357:6;4410:2;4398:9;4389:7;4385:23;4381:32;4378:52;;;4426:1;4423;4416:12;4378:52;4466:9;4453:23;4499:18;4491:6;4488:30;4485:50;;;4531:1;4528;4521:12;4485:50;4554;4596:7;4587:6;4576:9;4572:22;4554:50;:::i;:::-;4544:60;4288:322;-1:-1:-1;;;;4288:322:9:o;5140:274::-;-1:-1:-1;;;;;5332:32:9;;;;5314:51;;5396:2;5381:18;;5374:34;5302:2;5287:18;;5140:274::o;6053:258::-;6125:1;6135:113;6149:6;6146:1;6143:13;6135:113;;;6225:11;;;6219:18;6206:11;;;6199:39;6171:2;6164:10;6135:113;;;6266:6;6263:1;6260:13;6257:48;;;6301:1;6292:6;6287:3;6283:16;6276:27;6257:48;;6053:258;;;:::o;6316:::-;6358:3;6396:5;6390:12;6423:6;6418:3;6411:19;6439:63;6495:6;6488:4;6483:3;6479:14;6472:4;6465:5;6461:16;6439:63;:::i;:::-;6556:2;6535:15;-1:-1:-1;;6531:29:9;6522:39;;;;6563:4;6518:50;;6316:258;-1:-1:-1;;6316:258:9:o;6579:220::-;6728:2;6717:9;6710:21;6691:4;6748:45;6789:2;6778:9;6774:18;6766:6;6748:45;:::i;6804:308::-;6879:5;6908:53;6924:36;6953:6;6924:36;:::i;6908:53::-;6899:62;;6984:6;6977:5;6970:21;7024:3;7015:6;7010:3;7006:16;7003:25;7000:45;;;7041:1;7038;7031:12;7000:45;7054:52;7099:6;7092:4;7085:5;7081:16;7076:3;7054:52;:::i;7117:457::-;7196:6;7249:2;7237:9;7228:7;7224:23;7220:32;7217:52;;;7265:1;7262;7255:12;7217:52;7298:9;7292:16;7331:18;7323:6;7320:30;7317:50;;;7363:1;7360;7353:12;7317:50;7386:22;;7439:4;7431:13;;7427:27;-1:-1:-1;7417:55:9;;7468:1;7465;7458:12;7417:55;7491:77;7560:7;7555:2;7549:9;7544:2;7540;7536:11;7491:77;:::i;7579:466::-;7754:3;7792:6;7786:13;7808:53;7854:6;7849:3;7842:4;7834:6;7830:17;7808:53;:::i;:::-;7924:13;;7883:16;;;;7946:57;7924:13;7883:16;7980:4;7968:17;;7946:57;:::i;:::-;8019:20;;7579:466;-1:-1:-1;;;;7579:466:9:o;8468:127::-;8529:10;8524:3;8520:20;8517:1;8510:31;8560:4;8557:1;8550:15;8584:4;8581:1;8574:15;8600:125;8640:4;8668:1;8665;8662:8;8659:34;;;8673:18;;:::i;:::-;-1:-1:-1;8710:9:9;;8600:125::o;8912:274::-;9041:3;9079:6;9073:13;9095:53;9141:6;9136:3;9129:4;9121:6;9117:17;9095:53;:::i;:::-;9164:16;;;;;8912:274;-1:-1:-1;;8912:274:9:o;9191:184::-;9261:6;9314:2;9302:9;9293:7;9289:23;9285:32;9282:52;;;9330:1;9327;9320:12;9282:52;-1:-1:-1;9353:16:9;;9191:184;-1:-1:-1;9191:184:9:o;9380:128::-;9420:3;9451:1;9447:6;9444:1;9441:13;9438:39;;;9457:18;;:::i;:::-;-1:-1:-1;9493:9:9;;9380:128::o;10204:371::-;-1:-1:-1;;;;;;10389:33:9;;10377:46;;10446:13;;10359:3;;10468:61;10446:13;10518:1;10509:11;;10502:4;10490:17;;10468:61;:::i;:::-;10549:16;;;;10567:1;10545:24;;10204:371;-1:-1:-1;;;10204:371:9:o;10580:245::-;10647:6;10700:2;10688:9;10679:7;10675:23;10671:32;10668:52;;;10716:1;10713;10706:12;10668:52;10748:9;10742:16;10767:28;10789:5;10767:28;:::i;13878:452::-;14128:2;14117:9;14110:21;14167:2;14162;14151:9;14147:18;14140:30;-1:-1:-1;;;14201:2:9;14190:9;14186:18;14179:40;14257:3;14250:4;14239:9;14235:20;14228:33;14091:4;14278:46;14319:3;14308:9;14304:19;14296:6;14278:46;:::i;14335:452::-;14585:2;14574:9;14567:21;14624:2;14619;14608:9;14604:18;14597:30;-1:-1:-1;;;14658:2:9;14647:9;14643:18;14636:40;14714:3;14707:4;14696:9;14692:20;14685:33;14548:4;14735:46;14776:3;14765:9;14761:19;14753:6;14735:46;:::i;14792:610::-;15038:13;;14981:3;;15012;;15091:4;15118:15;;;14981:3;15161:175;15175:6;15172:1;15169:13;15161:175;;;15238:13;;15224:28;;15274:14;;;;15311:15;;;;15197:1;15190:9;15161:175;;;-1:-1:-1;;15345:21:9;;;-1:-1:-1;15382:14:9;;;;;-1:-1:-1;;;14792:610:9:o;15407:168::-;15447:7;15513:1;15509;15505:6;15501:14;15498:1;15495:21;15490:1;15483:9;15476:17;15472:45;15469:71;;;15520:18;;:::i;:::-;-1:-1:-1;15560:9:9;;15407:168::o;15769:556::-;15971:2;15953:21;;;16010:3;15990:18;;;15983:31;16050:34;16045:2;16030:18;;16023:62;16121:34;16116:2;16101:18;;16094:62;16193:34;16187:3;16172:19;;16165:63;-1:-1:-1;;;16259:3:9;16244:19;;16237:46;16315:3;16300:19;;15769:556::o;16330:345::-;-1:-1:-1;;;;;16550:32:9;;;;16532:51;;16614:2;16599:18;;16592:34;;;;16657:2;16642:18;;16635:34;16520:2;16505:18;;16330:345::o;16680:127::-;16741:10;16736:3;16732:20;16729:1;16722:31;16772:4;16769:1;16762:15;16796:4;16793:1;16786:15;16812:135;16851:3;16872:17;;;16869:43;;16892:18;;:::i;:::-;-1:-1:-1;16939:1:9;16928:13;;16812:135::o;16952:709::-;17017:5;17070:3;17063:4;17055:6;17051:17;17047:27;17037:55;;17088:1;17085;17078:12;17037:55;17117:6;17111:13;17143:4;17166:18;17162:2;17159:26;17156:52;;;17188:18;;:::i;:::-;17234:2;17231:1;17227:10;17257:28;17281:2;17277;17273:11;17257:28;:::i;:::-;17319:15;;;17389;;;17385:24;;;17350:12;;;;17421:15;;;17418:35;;;17449:1;17446;17439:12;17418:35;17485:2;17477:6;17473:15;17462:26;;17497:135;17513:6;17508:3;17505:15;17497:135;;;17579:10;;17567:23;;17530:12;;;;17610;;;;17497:135;;;17650:5;16952:709;-1:-1:-1;;;;;;;16952:709:9:o;17666:614::-;17795:6;17803;17856:2;17844:9;17835:7;17831:23;17827:32;17824:52;;;17872:1;17869;17862:12;17824:52;17905:9;17899:16;17934:18;17975:2;17967:6;17964:14;17961:34;;;17991:1;17988;17981:12;17961:34;18014:72;18078:7;18069:6;18058:9;18054:22;18014:72;:::i;:::-;18004:82;;18132:2;18121:9;18117:18;18111:25;18095:41;;18161:2;18151:8;18148:16;18145:36;;;18177:1;18174;18167:12;18145:36;;18200:74;18266:7;18255:8;18244:9;18240:24;18200:74;:::i;18285:442::-;-1:-1:-1;;;;;18532:32:9;;;;18514:51;;-1:-1:-1;;;;;;18601:33:9;;;;18596:2;18581:18;;18574:61;18666:2;18651:18;;18644:34;18709:2;18694:18;;18687:34;18501:3;18486:19;;18285:442::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_SCRIPT()": "f8ccbf47", + "IS_TEST()": "fa7626d4", + "deal(address,address,uint256)": "6bce989b", + "deal(address,address,uint256,bool)": "97754ae9", + "deal(address,uint256)": "c88a5e6d", + "deployCode(string)": "9a8325a0", + "deployCode(string,bytes)": "29ce9dde", + "failed()": "ba414fa6", + "hoax(address)": "233240ee", + "hoax(address,address)": "29a9e300", + "hoax(address,address,uint256)": "af9bbe5f", + "hoax(address,uint256)": "e9a79a7b", + "rewind(uint256)": "2d6c17a3", + "setUp()": "0a9254e4", + "skip(uint256)": "b9c071b4", + "startHoax(address)": "6f597075", + "startHoax(address,address)": "d06d8229", + "startHoax(address,address,uint256)": "3bf82db1", + "startHoax(address,uint256)": "108554f2", + "testGreeting()": "e31b08ca", + "testSetGreeting()": "ef84f4dd", + "tip(address,address,uint256)": "d82555f1", + "vm()": "3a768463" + }, + "ast": { + "absolutePath": "test/Greeter.t.sol", + "id": 21357, + "exportedSymbols": { + "DSTest": [ + 1786 + ], + "Greeter": [ + 21259 + ], + "GreeterTest": [ + 21356 + ], + "ICrossDomainMessenger": [ + 21131 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "39:1094:8", + "nodes": [ + { + "id": 21261, + "nodeType": "PragmaDirective", + "src": "39:24:8", + "literals": [ + "solidity", + "^", + "0.8", + ".13" + ] + }, + { + "id": 21262, + "nodeType": "ImportDirective", + "src": "65:28:8", + "absolutePath": "lib/forge-std/src/Test.sol", + "file": "forge-std/Test.sol", + "nameLocation": "-1:-1:-1", + "scope": 21357, + "sourceUnit": 4485, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21263, + "nodeType": "ImportDirective", + "src": "94:25:8", + "absolutePath": "src/Greeter.sol", + "file": "src/Greeter.sol", + "nameLocation": "-1:-1:-1", + "scope": 21357, + "sourceUnit": 21260, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21264, + "nodeType": "ImportDirective", + "src": "120:31:8", + "absolutePath": "lib/forge-std/src/console.sol", + "file": "forge-std/console.sol", + "nameLocation": "-1:-1:-1", + "scope": 21357, + "sourceUnit": 13029, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 21356, + "nodeType": "ContractDefinition", + "src": "153:953:8", + "nodes": [ + { + "id": 21269, + "nodeType": "VariableDeclaration", + "src": "188:15:8", + "constant": false, + "mutability": "mutable", + "name": "greeter", + "nameLocation": "196:7:8", + "scope": 21356, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + }, + "typeName": { + "id": 21268, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 21267, + "name": "Greeter", + "nodeType": "IdentifierPath", + "referencedDeclaration": 21259, + "src": "188:7:8" + }, + "referencedDeclaration": 21259, + "src": "188:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "visibility": "internal" + }, + { + "id": 21277, + "nodeType": "EventDefinition", + "src": "210:127:8", + "anonymous": false, + "eventSelector": "2cae530c5be69254f4523a86f6aa90751f1e4b1ffffca6bbd3330da2ec6437b7", + "name": "SetGreeting", + "nameLocation": "216:11:8", + "parameters": { + "id": 21276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21271, + "indexed": false, + "mutability": "mutable", + "name": "sender", + "nameLocation": "245:6:8", + "nodeType": "VariableDeclaration", + "scope": 21277, + "src": "237:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21270, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "237:7:8", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21273, + "indexed": false, + "mutability": "mutable", + "name": "origin", + "nameLocation": "287:6:8", + "nodeType": "VariableDeclaration", + "scope": 21277, + "src": "279:14:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21272, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "279:7:8", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21275, + "indexed": false, + "mutability": "mutable", + "name": "xorigin", + "nameLocation": "328:7:8", + "nodeType": "VariableDeclaration", + "scope": 21277, + "src": "320:15:8", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21274, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "320:7:8", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "227:109:8" + } + }, + { + "id": 21289, + "nodeType": "FunctionDefinition", + "src": "380:71:8", + "body": { + "id": 21288, + "nodeType": "Block", + "src": "404:47:8", + "statements": [ + { + "expression": { + "id": 21286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21280, + "name": "greeter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21269, + "src": "414:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "hexValue": "68656c6c6f", + "id": 21284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "436:7:8", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c8aff950685c2ed4bc3174f3472287b56d9517b9c948127319a09a7a36deac8", + "typeString": "literal_string \"hello\"" + }, + "value": "hello" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c8aff950685c2ed4bc3174f3472287b56d9517b9c948127319a09a7a36deac8", + "typeString": "literal_string \"hello\"" + } + ], + "id": 21283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "424:11:8", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_string_memory_ptr_$returns$_t_contract$_Greeter_$21259_$", + "typeString": "function (string memory) returns (contract Greeter)" + }, + "typeName": { + "id": 21282, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 21281, + "name": "Greeter", + "nodeType": "IdentifierPath", + "referencedDeclaration": 21259, + "src": "428:7:8" + }, + "referencedDeclaration": 21259, + "src": "428:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + } + }, + "id": 21285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "424:20:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "src": "414:30:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "id": 21287, + "nodeType": "ExpressionStatement", + "src": "414:30:8" + } + ] + }, + "functionSelector": "0a9254e4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "setUp", + "nameLocation": "389:5:8", + "parameters": { + "id": 21278, + "nodeType": "ParameterList", + "parameters": [], + "src": "394:2:8" + }, + "returnParameters": { + "id": 21279, + "nodeType": "ParameterList", + "parameters": [], + "src": "404:0:8" + }, + "scope": 21356, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21307, + "nodeType": "FunctionDefinition", + "src": "472:144:8", + "body": { + "id": 21306, + "nodeType": "Block", + "src": "503:113:8", + "statements": [ + { + "assignments": [ + 21293 + ], + "declarations": [ + { + "constant": false, + "id": 21293, + "mutability": "mutable", + "name": "greeting", + "nameLocation": "527:8:8", + "nodeType": "VariableDeclaration", + "scope": 21306, + "src": "513:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21292, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "513:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 21294, + "nodeType": "VariableDeclarationStatement", + "src": "513:22:8" + }, + { + "expression": { + "id": 21299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21295, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21293, + "src": "546:8:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 21296, + "name": "greeter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21269, + "src": "557:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "id": 21297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "greet", + "nodeType": "MemberAccess", + "referencedDeclaration": 21164, + "src": "557:13:8", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$", + "typeString": "function () view external returns (string memory)" + } + }, + "id": 21298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "557:15:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "546:26:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 21300, + "nodeType": "ExpressionStatement", + "src": "546:26:8" + }, + { + "expression": { + "arguments": [ + { + "id": 21302, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21293, + "src": "591:8:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "hexValue": "68656c6c6f", + "id": 21303, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "601:7:8", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c8aff950685c2ed4bc3174f3472287b56d9517b9c948127319a09a7a36deac8", + "typeString": "literal_string \"hello\"" + }, + "value": "hello" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_stringliteral_1c8aff950685c2ed4bc3174f3472287b56d9517b9c948127319a09a7a36deac8", + "typeString": "literal_string \"hello\"" + } + ], + "id": 21301, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1639, + "src": "582:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 21304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "582:27:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21305, + "nodeType": "ExpressionStatement", + "src": "582:27:8" + } + ] + }, + "functionSelector": "e31b08ca", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "testGreeting", + "nameLocation": "481:12:8", + "parameters": { + "id": 21290, + "nodeType": "ParameterList", + "parameters": [], + "src": "493:2:8" + }, + "returnParameters": { + "id": 21291, + "nodeType": "ParameterList", + "parameters": [], + "src": "503:0:8" + }, + "scope": 21356, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 21355, + "nodeType": "FunctionDefinition", + "src": "642:439:8", + "body": { + "id": 21354, + "nodeType": "Block", + "src": "676:405:8", + "statements": [ + { + "assignments": [ + 21311 + ], + "declarations": [ + { + "constant": false, + "id": 21311, + "mutability": "mutable", + "name": "greeting", + "nameLocation": "700:8:8", + "nodeType": "VariableDeclaration", + "scope": 21354, + "src": "686:22:8", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21310, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "686:6:8", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "id": 21312, + "nodeType": "VariableDeclarationStatement", + "src": "686:22:8" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "74727565", + "id": 21316, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "733:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "74727565", + "id": 21317, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "739:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "74727565", + "id": 21318, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "745:4:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + { + "hexValue": "66616c7365", + "id": 21319, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "751:5:8", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21313, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "719:2:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 21315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "expectEmit", + "nodeType": "MemberAccess", + "referencedDeclaration": 4778, + "src": "719:13:8", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_bool_$_t_bool_$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool,bool,bool) external" + } + }, + "id": 21320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "719:38:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21321, + "nodeType": "ExpressionStatement", + "src": "719:38:8" + }, + { + "eventCall": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "307862346337396461423866323539433741656536453562324161373239383231383634323237653834", + "id": 21325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "805:42:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 21324, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "797:7:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 21323, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "797:7:8", + "typeDescriptions": {} + } + }, + "id": 21326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "797:51:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "307830306133323963303634383736394137336166416337463933383145303846423433644245413732", + "id": 21329, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "871:42:8", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x00a329c0648769A73afAc7F9381E08FB43dBEA72" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 21328, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "863:7:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 21327, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "863:7:8", + "typeDescriptions": {} + } + }, + "id": 21330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "863:51:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "30", + "id": 21333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "937:1:8", + "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": 21332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "929:7:8", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 21331, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "929:7:8", + "typeDescriptions": {} + } + }, + "id": 21334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "929:10:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 21322, + "name": "SetGreeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21277, + "src": "772:11:8", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address,address)" + } + }, + "id": 21335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "772:177:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21336, + "nodeType": "EmitStatement", + "src": "767:182:8" + }, + { + "expression": { + "arguments": [ + { + "hexValue": "4e6577204772656574696e67", + "id": 21340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "979:14:8", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5bab89d0b732bb94af0fe98abfeff9fbb37df01b7c26feef672203a4723ff8df", + "typeString": "literal_string \"New Greeting\"" + }, + "value": "New Greeting" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5bab89d0b732bb94af0fe98abfeff9fbb37df01b7c26feef672203a4723ff8df", + "typeString": "literal_string \"New Greeting\"" + } + ], + "expression": { + "id": 21337, + "name": "greeter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21269, + "src": "959:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "id": 21339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "setGreeting", + "nodeType": "MemberAccess", + "referencedDeclaration": 21183, + "src": "959:19:8", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) external" + } + }, + "id": 21341, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "959:35:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21342, + "nodeType": "ExpressionStatement", + "src": "959:35:8" + }, + { + "expression": { + "id": 21347, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 21343, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21311, + "src": "1004:8:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 21344, + "name": "greeter", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21269, + "src": "1015:7:8", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Greeter_$21259", + "typeString": "contract Greeter" + } + }, + "id": 21345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "greet", + "nodeType": "MemberAccess", + "referencedDeclaration": 21164, + "src": "1015:13:8", + "typeDescriptions": { + "typeIdentifier": "t_function_external_view$__$returns$_t_string_memory_ptr_$", + "typeString": "function () view external returns (string memory)" + } + }, + "id": 21346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1015:15:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "1004:26:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "id": 21348, + "nodeType": "ExpressionStatement", + "src": "1004:26:8" + }, + { + "expression": { + "arguments": [ + { + "id": 21350, + "name": "greeting", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21311, + "src": "1049:8:8", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "hexValue": "4e6577204772656574696e67", + "id": 21351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1059:14:8", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5bab89d0b732bb94af0fe98abfeff9fbb37df01b7c26feef672203a4723ff8df", + "typeString": "literal_string \"New Greeting\"" + }, + "value": "New Greeting" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_stringliteral_5bab89d0b732bb94af0fe98abfeff9fbb37df01b7c26feef672203a4723ff8df", + "typeString": "literal_string \"New Greeting\"" + } + ], + "id": 21349, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1639, + "src": "1040:8:8", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 21352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1040:34:8", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21353, + "nodeType": "ExpressionStatement", + "src": "1040:34:8" + } + ] + }, + "functionSelector": "ef84f4dd", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "testSetGreeting", + "nameLocation": "651:15:8", + "parameters": { + "id": 21308, + "nodeType": "ParameterList", + "parameters": [], + "src": "666:2:8" + }, + "returnParameters": { + "id": 21309, + "nodeType": "ParameterList", + "parameters": [], + "src": "676:0:8" + }, + "scope": 21356, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 21265, + "name": "Test", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3137, + "src": "177:4:8" + }, + "id": 21266, + "nodeType": "InheritanceSpecifier", + "src": "177:4:8" + } + ], + "canonicalName": "GreeterTest", + "contractDependencies": [ + 21259 + ], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21356, + 3137, + 1818, + 1786 + ], + "name": "GreeterTest", + "nameLocation": "162:11:8", + "scope": 21357, + "usedErrors": [] + } + ], + "license": "UNLICENSED" + }, + "id": 8 +} \ No newline at end of file diff --git a/getting-started/foundry/out/ICrossDomainMessenger.sol/ICrossDomainMessenger.json b/getting-started/foundry/out/ICrossDomainMessenger.sol/ICrossDomainMessenger.json new file mode 100644 index 00000000..961b4577 --- /dev/null +++ b/getting-started/foundry/out/ICrossDomainMessenger.sol/ICrossDomainMessenger.json @@ -0,0 +1,590 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "msgHash", + "type": "bytes32" + } + ], + "name": "FailedRelayedMessage", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "msgHash", + "type": "bytes32" + } + ], + "name": "RelayedMessage", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "target", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "message", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "messageNonce", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gasLimit", + "type": "uint256" + } + ], + "name": "SentMessage", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_target", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + }, + { + "internalType": "uint32", + "name": "_gasLimit", + "type": "uint32" + } + ], + "name": "sendMessage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "xDomainMessageSender", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "sendMessage(address,bytes,uint32)": "3dbb202b", + "xDomainMessageSender()": "6e296e45" + }, + "ast": { + "absolutePath": "lib/node_modules/@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol", + "id": 39, + "exportedSymbols": { + "ICrossDomainMessenger": [ + 38 + ] + }, + "nodeType": "SourceUnit", + "src": "32:1003:0", + "nodes": [ + { + "id": 1, + "nodeType": "PragmaDirective", + "src": "32:30:0", + "literals": [ + "solidity", + ">", + "0.5", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 38, + "nodeType": "ContractDefinition", + "src": "104:930:0", + "nodes": [ + { + "id": 14, + "nodeType": "EventDefinition", + "src": "192:159:0", + "anonymous": false, + "eventSelector": "cb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a", + "name": "SentMessage", + "nameLocation": "198:11:0", + "parameters": { + "id": 13, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4, + "indexed": true, + "mutability": "mutable", + "name": "target", + "nameLocation": "235:6:0", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "219:22:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "219:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6, + "indexed": false, + "mutability": "mutable", + "name": "sender", + "nameLocation": "259:6:0", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "251:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "251:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8, + "indexed": false, + "mutability": "mutable", + "name": "message", + "nameLocation": "281:7:0", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "275:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 7, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "275:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10, + "indexed": false, + "mutability": "mutable", + "name": "messageNonce", + "nameLocation": "306:12:0", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "298:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "298:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12, + "indexed": false, + "mutability": "mutable", + "name": "gasLimit", + "nameLocation": "336:8:0", + "nodeType": "VariableDeclaration", + "scope": 14, + "src": "328:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "328:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "209:141:0" + } + }, + { + "id": 18, + "nodeType": "EventDefinition", + "src": "356:46:0", + "anonymous": false, + "eventSelector": "4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c", + "name": "RelayedMessage", + "nameLocation": "362:14:0", + "parameters": { + "id": 17, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16, + "indexed": true, + "mutability": "mutable", + "name": "msgHash", + "nameLocation": "393:7:0", + "nodeType": "VariableDeclaration", + "scope": 18, + "src": "377:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 15, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "377:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "376:25:0" + } + }, + { + "id": 22, + "nodeType": "EventDefinition", + "src": "407:52:0", + "anonymous": false, + "eventSelector": "99d0e048484baa1b1540b1367cb128acd7ab2946d1ed91ec10e3c85e4bf51b8f", + "name": "FailedRelayedMessage", + "nameLocation": "413:20:0", + "parameters": { + "id": 21, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20, + "indexed": true, + "mutability": "mutable", + "name": "msgHash", + "nameLocation": "450:7:0", + "nodeType": "VariableDeclaration", + "scope": 22, + "src": "434:23:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 19, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "434:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "433:25:0" + } + }, + { + "id": 27, + "nodeType": "FunctionDefinition", + "src": "524:64:0", + "functionSelector": "6e296e45", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "xDomainMessageSender", + "nameLocation": "533:20:0", + "parameters": { + "id": 23, + "nodeType": "ParameterList", + "parameters": [], + "src": "553:2:0" + }, + "returnParameters": { + "id": 26, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 25, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 27, + "src": "579:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 24, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "579:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "578:9:0" + }, + "scope": 38, + "stateMutability": "view", + "virtual": false, + "visibility": "external" + }, + { + "id": 37, + "nodeType": "FunctionDefinition", + "src": "912:120:0", + "documentation": { + "id": 28, + "nodeType": "StructuredDocumentation", + "src": "674:233:0", + "text": " Sends a cross domain message to the target messenger.\n @param _target Target contract address.\n @param _message Message to send to the target.\n @param _gasLimit Gas limit for the provided message." + }, + "functionSelector": "3dbb202b", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "sendMessage", + "nameLocation": "921:11:0", + "parameters": { + "id": 35, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 30, + "mutability": "mutable", + "name": "_target", + "nameLocation": "950:7:0", + "nodeType": "VariableDeclaration", + "scope": 37, + "src": "942:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 29, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "942:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 32, + "mutability": "mutable", + "name": "_message", + "nameLocation": "982:8:0", + "nodeType": "VariableDeclaration", + "scope": 37, + "src": "967:23:0", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 31, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "967:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 34, + "mutability": "mutable", + "name": "_gasLimit", + "nameLocation": "1007:9:0", + "nodeType": "VariableDeclaration", + "scope": 37, + "src": "1000:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + }, + "typeName": { + "id": 33, + "name": "uint32", + "nodeType": "ElementaryTypeName", + "src": "1000:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint32", + "typeString": "uint32" + } + }, + "visibility": "internal" + } + ], + "src": "932:90:0" + }, + "returnParameters": { + "id": 36, + "nodeType": "ParameterList", + "parameters": [], + "src": "1031:0:0" + }, + "scope": 38, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "ICrossDomainMessenger", + "contractDependencies": [], + "contractKind": "interface", + "documentation": { + "id": 2, + "nodeType": "StructuredDocumentation", + "src": "64:39:0", + "text": " @title ICrossDomainMessenger" + }, + "fullyImplemented": false, + "linearizedBaseContracts": [ + 38 + ], + "name": "ICrossDomainMessenger", + "nameLocation": "114:21:0", + "scope": 39, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 0 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Script.sol/Script.json b/getting-started/foundry/out/Script.sol/Script.json new file mode 100644 index 00000000..bdf467f0 --- /dev/null +++ b/getting-started/foundry/out/Script.sol/Script.json @@ -0,0 +1,521 @@ +{ + "abi": [ + { + "inputs": [], + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "vm", + "outputs": [ + { + "internalType": "contract Vm", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_SCRIPT()": "f8ccbf47", + "vm()": "3a768463" + }, + "ast": { + "absolutePath": "lib/forge-std/src/Script.sol", + "id": 1819, + "exportedSymbols": { + "Script": [ + 1818 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ] + }, + "nodeType": "SourceUnit", + "src": "38:326:1", + "nodes": [ + { + "id": 1788, + "nodeType": "PragmaDirective", + "src": "38:31:1", + "literals": [ + "solidity", + ">=", + "0.6", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 1789, + "nodeType": "ImportDirective", + "src": "71:18:1", + "absolutePath": "lib/forge-std/src/Vm.sol", + "file": "./Vm.sol", + "nameLocation": "-1:-1:-1", + "scope": 1819, + "sourceUnit": 4965, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1790, + "nodeType": "ImportDirective", + "src": "90:23:1", + "absolutePath": "lib/forge-std/src/console.sol", + "file": "./console.sol", + "nameLocation": "-1:-1:-1", + "scope": 1819, + "sourceUnit": 13029, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1791, + "nodeType": "ImportDirective", + "src": "114:24:1", + "absolutePath": "lib/forge-std/src/console2.sol", + "file": "./console2.sol", + "nameLocation": "-1:-1:-1", + "scope": 1819, + "sourceUnit": 21093, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1818, + "nodeType": "ContractDefinition", + "src": "140:223:1", + "nodes": [ + { + "id": 1794, + "nodeType": "VariableDeclaration", + "src": "171:28:1", + "constant": false, + "functionSelector": "f8ccbf47", + "mutability": "mutable", + "name": "IS_SCRIPT", + "nameLocation": "183:9:1", + "scope": 1818, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1792, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "171:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": { + "hexValue": "74727565", + "id": 1793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "195:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "visibility": "public" + }, + { + "id": 1811, + "nodeType": "VariableDeclaration", + "src": "205:110:1", + "constant": true, + "mutability": "constant", + "name": "VM_ADDRESS", + "nameLocation": "230:10:1", + "scope": 1818, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1795, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "205:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 1805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "293:17:1", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 1804, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "283:9:1", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "283:28:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 1803, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "275:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 1802, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "275:7:1", + "typeDescriptions": {} + } + }, + "id": 1807, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "275:37:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1801, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "267:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 1800, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "267:7:1", + "typeDescriptions": {} + } + }, + "id": 1808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "267:46:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 1799, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "259:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes20_$", + "typeString": "type(bytes20)" + }, + "typeName": { + "id": 1798, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "259:7:1", + "typeDescriptions": {} + } + }, + "id": 1809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "259:55:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "id": 1797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "251:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 1796, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "251:7:1", + "typeDescriptions": {} + } + }, + "id": 1810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "251:64:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "private" + }, + { + "id": 1817, + "nodeType": "VariableDeclaration", + "src": "322:38:1", + "constant": true, + "functionSelector": "3a768463", + "mutability": "constant", + "name": "vm", + "nameLocation": "341:2:1", + "scope": 1818, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + }, + "typeName": { + "id": 1813, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1812, + "name": "Vm", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4964, + "src": "322:2:1" + }, + "referencedDeclaration": 4964, + "src": "322:2:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "value": { + "arguments": [ + { + "id": 1815, + "name": "VM_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1811, + "src": "349:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1814, + "name": "Vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4964, + "src": "346:2:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Vm_$4964_$", + "typeString": "type(contract Vm)" + } + }, + "id": 1816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "346:14:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "visibility": "public" + } + ], + "abstract": true, + "baseContracts": [], + "canonicalName": "Script", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 1818 + ], + "name": "Script", + "nameLocation": "158:6:1", + "scope": 1819, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 1 +} \ No newline at end of file diff --git a/getting-started/foundry/out/Vm.sol/Vm.json b/getting-started/foundry/out/Vm.sol/Vm.json new file mode 100644 index 00000000..583a0a3a --- /dev/null +++ b/getting-started/foundry/out/Vm.sol/Vm.json @@ -0,0 +1,6912 @@ +{ + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "accesses", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "reads", + "type": "bytes32[]" + }, + { + "internalType": "bytes32[]", + "name": "writes", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "addr", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "name": "assume", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "broadcast", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "broadcast", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "chainId", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "clearMockedCalls", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "closeFile", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "coinbase", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envAddress", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBool", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBool", + "outputs": [ + { + "internalType": "bool[]", + "name": "", + "type": "bool[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBytes", + "outputs": [ + { + "internalType": "bytes[]", + "name": "", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32[]", + "name": "", + "type": "bytes32[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envInt", + "outputs": [ + { + "internalType": "int256[]", + "name": "", + "type": "int256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envInt", + "outputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envString", + "outputs": [ + { + "internalType": "string[]", + "name": "", + "type": "string[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envUint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "envUint", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "etch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "expectCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "expectCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "name": "expectEmit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "expectEmit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "name": "expectRevert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "expectRevert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "expectRevert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "fee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string[]", + "name": "", + "type": "string[]" + } + ], + "name": "ffi", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "getCode", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "getNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getRecordedLogs", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32[]", + "name": "topics", + "type": "bytes32[]" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "internalType": "struct Vm.Log[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "label", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "load", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "mockCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "mockCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "prank", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "prank", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "readFile", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "readLine", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "record", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "recordLogs", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "removeFile", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "roll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "setEnv", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "name": "setNonce", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "sign", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "startBroadcast", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "startBroadcast", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "startPrank", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "startPrank", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "stopBroadcast", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "stopPrank", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "store", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "toString", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "warp", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "writeFile", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + }, + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "writeLine", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "accesses(address)": "65bc9481", + "addr(uint256)": "ffa18649", + "assume(bool)": "4c63e562", + "broadcast()": "afc98040", + "broadcast(address)": "e6962cdb", + "chainId(uint256)": "4049ddd2", + "clearMockedCalls()": "3fdf4e15", + "closeFile(string)": "48c3241f", + "coinbase(address)": "ff483c54", + "deal(address,uint256)": "c88a5e6d", + "envAddress(string)": "350d56bf", + "envAddress(string,string)": "ad31b9fa", + "envBool(string)": "7ed1ec7d", + "envBool(string,string)": "aaaddeaf", + "envBytes(string)": "4d7baf06", + "envBytes(string,string)": "ddc2651b", + "envBytes32(string)": "97949042", + "envBytes32(string,string)": "5af231c1", + "envInt(string)": "892a0c61", + "envInt(string,string)": "42181150", + "envString(string)": "f877cb19", + "envString(string,string)": "14b02bc9", + "envUint(string)": "c1978d1f", + "envUint(string,string)": "f3dec099", + "etch(address,bytes)": "b4d6c782", + "expectCall(address,bytes)": "bd6af434", + "expectCall(address,uint256,bytes)": "f30c7ba3", + "expectEmit(bool,bool,bool,bool)": "491cc7c2", + "expectEmit(bool,bool,bool,bool,address)": "81bad6f3", + "expectRevert()": "f4844814", + "expectRevert(bytes)": "f28dceb3", + "expectRevert(bytes4)": "c31eb0e0", + "fee(uint256)": "39b37ab0", + "ffi(string[])": "89160467", + "getCode(string)": "8d1cc925", + "getNonce(address)": "2d0335ab", + "getRecordedLogs()": "191553a4", + "label(address,string)": "c657c718", + "load(address,bytes32)": "667f9d70", + "mockCall(address,bytes,bytes)": "b96213e4", + "mockCall(address,uint256,bytes,bytes)": "81409b91", + "prank(address)": "ca669fa7", + "prank(address,address)": "47e50cce", + "readFile(string)": "60f9bb11", + "readLine(string)": "70f55728", + "record()": "266cf109", + "recordLogs()": "41af2f52", + "removeFile(string)": "f1afe04d", + "roll(uint256)": "1f7b4f30", + "setEnv(string,string)": "3d5923ee", + "setNonce(address,uint64)": "f8e18b57", + "sign(uint256,bytes32)": "e341eaa4", + "startBroadcast()": "7fb5297f", + "startBroadcast(address)": "7fec2a8d", + "startPrank(address)": "06447d56", + "startPrank(address,address)": "45b56078", + "stopBroadcast()": "76eadd36", + "stopPrank()": "90c5013b", + "store(address,bytes32,bytes32)": "70ca10bb", + "toString(address)": "56ca623e", + "toString(bool)": "71dce7da", + "toString(bytes)": "71aad10d", + "toString(bytes32)": "b11a19e8", + "toString(int256)": "a322c40e", + "toString(uint256)": "6900a3ae", + "warp(uint256)": "e5d6bf02", + "writeFile(string,string)": "897e0a97", + "writeLine(string,string)": "619d897f" + }, + "ast": { + "absolutePath": "lib/forge-std/src/Vm.sol", + "id": 4965, + "exportedSymbols": { + "Vm": [ + 4964 + ] + }, + "nodeType": "SourceUnit", + "src": "38:8493:3", + "nodes": [ + { + "id": 4486, + "nodeType": "PragmaDirective", + "src": "38:24:3", + "literals": [ + "solidity", + ">=", + "0.6", + ".0" + ] + }, + { + "id": 4487, + "nodeType": "PragmaDirective", + "src": "63:33:3", + "literals": [ + "experimental", + "ABIEncoderV2" + ] + }, + { + "id": 4964, + "nodeType": "ContractDefinition", + "src": "98:8432:3", + "nodes": [ + { + "id": 4493, + "nodeType": "StructDefinition", + "src": "117:64:3", + "canonicalName": "Vm.Log", + "members": [ + { + "constant": false, + "id": 4490, + "mutability": "mutable", + "name": "topics", + "nameLocation": "148:6:3", + "nodeType": "VariableDeclaration", + "scope": 4493, + "src": "138:16:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4488, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "138:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4489, + "nodeType": "ArrayTypeName", + "src": "138:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4492, + "mutability": "mutable", + "name": "data", + "nameLocation": "170:4:3", + "nodeType": "VariableDeclaration", + "scope": 4493, + "src": "164:10:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4491, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "164:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "name": "Log", + "nameLocation": "124:3:3", + "scope": 4964, + "visibility": "public" + }, + { + "id": 4498, + "nodeType": "FunctionDefinition", + "src": "230:32:3", + "functionSelector": "e5d6bf02", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "warp", + "nameLocation": "239:4:3", + "parameters": { + "id": 4496, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4495, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4498, + "src": "244:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4494, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "244:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "243:9:3" + }, + "returnParameters": { + "id": 4497, + "nodeType": "ParameterList", + "parameters": [], + "src": "261:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4503, + "nodeType": "FunctionDefinition", + "src": "304:32:3", + "functionSelector": "1f7b4f30", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "roll", + "nameLocation": "313:4:3", + "parameters": { + "id": 4501, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4500, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4503, + "src": "318:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4499, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "318:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "317:9:3" + }, + "returnParameters": { + "id": 4502, + "nodeType": "ParameterList", + "parameters": [], + "src": "335:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4508, + "nodeType": "FunctionDefinition", + "src": "380:31:3", + "functionSelector": "39b37ab0", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "fee", + "nameLocation": "389:3:3", + "parameters": { + "id": 4506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4505, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4508, + "src": "393:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4504, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "393:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "392:9:3" + }, + "returnParameters": { + "id": 4507, + "nodeType": "ParameterList", + "parameters": [], + "src": "410:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4513, + "nodeType": "FunctionDefinition", + "src": "442:35:3", + "functionSelector": "4049ddd2", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "chainId", + "nameLocation": "451:7:3", + "parameters": { + "id": 4511, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4510, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4513, + "src": "459:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4509, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "459:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "458:9:3" + }, + "returnParameters": { + "id": 4512, + "nodeType": "ParameterList", + "parameters": [], + "src": "476:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4522, + "nodeType": "FunctionDefinition", + "src": "538:58:3", + "functionSelector": "667f9d70", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "load", + "nameLocation": "547:4:3", + "parameters": { + "id": 4518, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4515, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4522, + "src": "552:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4514, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "552:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4517, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4522, + "src": "560:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4516, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "560:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "551:17:3" + }, + "returnParameters": { + "id": 4521, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4520, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4522, + "src": "587:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4519, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "587:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "586:9:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4531, + "nodeType": "FunctionDefinition", + "src": "671:49:3", + "functionSelector": "70ca10bb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "store", + "nameLocation": "680:5:3", + "parameters": { + "id": 4529, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4524, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4531, + "src": "686:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4523, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "686:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4526, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4531, + "src": "694:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4525, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "694:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4528, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4531, + "src": "702:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4527, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "702:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "685:25:3" + }, + "returnParameters": { + "id": 4530, + "nodeType": "ParameterList", + "parameters": [], + "src": "719:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4544, + "nodeType": "FunctionDefinition", + "src": "778:72:3", + "functionSelector": "e341eaa4", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "sign", + "nameLocation": "787:4:3", + "parameters": { + "id": 4536, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4533, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4544, + "src": "792:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4532, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "792:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4535, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4544, + "src": "800:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4534, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "800:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "791:17:3" + }, + "returnParameters": { + "id": 4543, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4538, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4544, + "src": "827:5:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "typeName": { + "id": 4537, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "827:5:3", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4540, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4544, + "src": "833:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4539, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "833:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4542, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4544, + "src": "841:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4541, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "841:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "826:23:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4551, + "nodeType": "FunctionDefinition", + "src": "930:50:3", + "functionSelector": "ffa18649", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "addr", + "nameLocation": "939:4:3", + "parameters": { + "id": 4547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4546, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4551, + "src": "944:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4545, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "944:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "943:9:3" + }, + "returnParameters": { + "id": 4550, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4549, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4551, + "src": "971:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4548, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "971:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "970:9:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4558, + "nodeType": "FunctionDefinition", + "src": "1021:53:3", + "functionSelector": "2d0335ab", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getNonce", + "nameLocation": "1030:8:3", + "parameters": { + "id": 4554, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4553, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4558, + "src": "1039:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4552, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1039:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1038:9:3" + }, + "returnParameters": { + "id": 4557, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4556, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4558, + "src": "1066:6:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4555, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1066:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1065:8:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4565, + "nodeType": "FunctionDefinition", + "src": "1169:44:3", + "functionSelector": "f8e18b57", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setNonce", + "nameLocation": "1178:8:3", + "parameters": { + "id": 4563, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4560, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "1187:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4559, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1187:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4562, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4565, + "src": "1196:6:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + }, + "typeName": { + "id": 4561, + "name": "uint64", + "nodeType": "ElementaryTypeName", + "src": "1196:6:3", + "typeDescriptions": { + "typeIdentifier": "t_uint64", + "typeString": "uint64" + } + }, + "visibility": "internal" + } + ], + "src": "1186:17:3" + }, + "returnParameters": { + "id": 4564, + "nodeType": "ParameterList", + "parameters": [], + "src": "1212:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4573, + "nodeType": "FunctionDefinition", + "src": "1303:64:3", + "functionSelector": "89160467", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "ffi", + "nameLocation": "1312:3:3", + "parameters": { + "id": 4569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4568, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4573, + "src": "1316:17:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_calldata_ptr_$dyn_calldata_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 4566, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1316:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 4567, + "nodeType": "ArrayTypeName", + "src": "1316:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "src": "1315:19:3" + }, + "returnParameters": { + "id": 4572, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4571, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4573, + "src": "1353:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4570, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1353:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1352:14:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4580, + "nodeType": "FunctionDefinition", + "src": "1421:59:3", + "functionSelector": "3d5923ee", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "setEnv", + "nameLocation": "1430:6:3", + "parameters": { + "id": 4578, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4575, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4580, + "src": "1437:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4574, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1437:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4577, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4580, + "src": "1454:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4576, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1454:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1436:34:3" + }, + "returnParameters": { + "id": 4579, + "nodeType": "ParameterList", + "parameters": [], + "src": "1479:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4587, + "nodeType": "FunctionDefinition", + "src": "1539:58:3", + "functionSelector": "7ed1ec7d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBool", + "nameLocation": "1548:7:3", + "parameters": { + "id": 4583, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4582, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4587, + "src": "1556:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4581, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1556:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1555:17:3" + }, + "returnParameters": { + "id": 4586, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4585, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4587, + "src": "1591:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4584, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1591:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1590:6:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4594, + "nodeType": "FunctionDefinition", + "src": "1602:61:3", + "functionSelector": "c1978d1f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envUint", + "nameLocation": "1611:7:3", + "parameters": { + "id": 4590, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4589, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4594, + "src": "1619:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4588, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1619:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1618:17:3" + }, + "returnParameters": { + "id": 4593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4592, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4594, + "src": "1654:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4591, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1654:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1653:9:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4601, + "nodeType": "FunctionDefinition", + "src": "1668:59:3", + "functionSelector": "892a0c61", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envInt", + "nameLocation": "1677:6:3", + "parameters": { + "id": 4597, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4596, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4601, + "src": "1684:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4595, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1684:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1683:17:3" + }, + "returnParameters": { + "id": 4600, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4599, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4601, + "src": "1719:6:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4598, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1719:6:3", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1718:8:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4608, + "nodeType": "FunctionDefinition", + "src": "1732:64:3", + "functionSelector": "350d56bf", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envAddress", + "nameLocation": "1741:10:3", + "parameters": { + "id": 4604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4603, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4608, + "src": "1752:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4602, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1752:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1751:17:3" + }, + "returnParameters": { + "id": 4607, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4606, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4608, + "src": "1787:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4605, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1787:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1786:9:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4615, + "nodeType": "FunctionDefinition", + "src": "1801:64:3", + "functionSelector": "97949042", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBytes32", + "nameLocation": "1810:10:3", + "parameters": { + "id": 4611, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4610, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4615, + "src": "1821:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4609, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1821:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1820:17:3" + }, + "returnParameters": { + "id": 4614, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4613, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4615, + "src": "1856:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4612, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1856:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1855:9:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4622, + "nodeType": "FunctionDefinition", + "src": "1870:69:3", + "functionSelector": "f877cb19", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envString", + "nameLocation": "1879:9:3", + "parameters": { + "id": 4618, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4617, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4622, + "src": "1889:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4616, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1889:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1888:17:3" + }, + "returnParameters": { + "id": 4621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4620, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4622, + "src": "1924:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4619, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1924:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1923:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4629, + "nodeType": "FunctionDefinition", + "src": "1944:67:3", + "functionSelector": "4d7baf06", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBytes", + "nameLocation": "1953:8:3", + "parameters": { + "id": 4625, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4624, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4629, + "src": "1962:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4623, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1962:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1961:17:3" + }, + "returnParameters": { + "id": 4628, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4627, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4629, + "src": "1997:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4626, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1997:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1996:14:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4639, + "nodeType": "FunctionDefinition", + "src": "2089:84:3", + "functionSelector": "aaaddeaf", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBool", + "nameLocation": "2098:7:3", + "parameters": { + "id": 4634, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4631, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4639, + "src": "2106:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4630, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2106:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4633, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4639, + "src": "2123:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4632, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2123:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2105:34:3" + }, + "returnParameters": { + "id": 4638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4637, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4639, + "src": "2158:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr", + "typeString": "bool[]" + }, + "typeName": { + "baseType": { + "id": 4635, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2158:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4636, + "nodeType": "ArrayTypeName", + "src": "2158:6:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr", + "typeString": "bool[]" + } + }, + "visibility": "internal" + } + ], + "src": "2157:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4649, + "nodeType": "FunctionDefinition", + "src": "2178:87:3", + "functionSelector": "f3dec099", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envUint", + "nameLocation": "2187:7:3", + "parameters": { + "id": 4644, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4641, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4649, + "src": "2195:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4640, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2195:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4643, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4649, + "src": "2212:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4642, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2212:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2194:34:3" + }, + "returnParameters": { + "id": 4648, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4647, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4649, + "src": "2247:16:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 4645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2247:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4646, + "nodeType": "ArrayTypeName", + "src": "2247:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2246:18:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4659, + "nodeType": "FunctionDefinition", + "src": "2270:85:3", + "functionSelector": "42181150", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envInt", + "nameLocation": "2279:6:3", + "parameters": { + "id": 4654, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4651, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4659, + "src": "2286:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4650, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2286:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4653, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4659, + "src": "2303:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4652, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2303:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2285:34:3" + }, + "returnParameters": { + "id": 4658, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4657, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4659, + "src": "2338:15:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 4655, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "2338:6:3", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4656, + "nodeType": "ArrayTypeName", + "src": "2338:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "2337:17:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4669, + "nodeType": "FunctionDefinition", + "src": "2360:90:3", + "functionSelector": "ad31b9fa", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envAddress", + "nameLocation": "2369:10:3", + "parameters": { + "id": 4664, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4661, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4669, + "src": "2380:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4660, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2380:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4663, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4669, + "src": "2397:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4662, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2397:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2379:34:3" + }, + "returnParameters": { + "id": 4668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4667, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4669, + "src": "2432:16:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 4665, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2432:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4666, + "nodeType": "ArrayTypeName", + "src": "2432:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "2431:18:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4679, + "nodeType": "FunctionDefinition", + "src": "2455:90:3", + "functionSelector": "5af231c1", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBytes32", + "nameLocation": "2464:10:3", + "parameters": { + "id": 4674, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4671, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4679, + "src": "2475:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4670, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2475:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4673, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4679, + "src": "2492:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4672, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2492:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2474:34:3" + }, + "returnParameters": { + "id": 4678, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4677, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4679, + "src": "2527:16:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4675, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2527:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4676, + "nodeType": "ArrayTypeName", + "src": "2527:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "2526:18:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4689, + "nodeType": "FunctionDefinition", + "src": "2550:88:3", + "functionSelector": "14b02bc9", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envString", + "nameLocation": "2559:9:3", + "parameters": { + "id": 4684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4681, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4689, + "src": "2569:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4680, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2569:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4683, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4689, + "src": "2586:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4682, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2586:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2568:34:3" + }, + "returnParameters": { + "id": 4688, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4687, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4689, + "src": "2621:15:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_memory_ptr_$dyn_memory_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 4685, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2621:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 4686, + "nodeType": "ArrayTypeName", + "src": "2621:8:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "src": "2620:17:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4699, + "nodeType": "FunctionDefinition", + "src": "2643:86:3", + "functionSelector": "ddc2651b", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "envBytes", + "nameLocation": "2652:8:3", + "parameters": { + "id": 4694, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4691, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4699, + "src": "2661:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4690, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2661:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4693, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4699, + "src": "2678:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4692, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "2678:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "2660:34:3" + }, + "returnParameters": { + "id": 4698, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4697, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4699, + "src": "2713:14:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_memory_ptr_$dyn_memory_ptr", + "typeString": "bytes[]" + }, + "typeName": { + "baseType": { + "id": 4695, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2713:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "id": 4696, + "nodeType": "ArrayTypeName", + "src": "2713:7:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes_storage_$dyn_storage_ptr", + "typeString": "bytes[]" + } + }, + "visibility": "internal" + } + ], + "src": "2712:16:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4704, + "nodeType": "FunctionDefinition", + "src": "2799:33:3", + "functionSelector": "ca669fa7", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "prank", + "nameLocation": "2808:5:3", + "parameters": { + "id": 4702, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4701, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4704, + "src": "2814:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4700, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2814:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2813:9:3" + }, + "returnParameters": { + "id": 4703, + "nodeType": "ParameterList", + "parameters": [], + "src": "2831:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4709, + "nodeType": "FunctionDefinition", + "src": "2934:38:3", + "functionSelector": "06447d56", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "startPrank", + "nameLocation": "2943:10:3", + "parameters": { + "id": 4707, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4706, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4709, + "src": "2954:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4705, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2954:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2953:9:3" + }, + "returnParameters": { + "id": 4708, + "nodeType": "ParameterList", + "parameters": [], + "src": "2971:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4716, + "nodeType": "FunctionDefinition", + "src": "3084:41:3", + "functionSelector": "47e50cce", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "prank", + "nameLocation": "3093:5:3", + "parameters": { + "id": 4714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4711, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4716, + "src": "3099:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4710, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3099:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4713, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4716, + "src": "3107:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4712, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3107:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3098:17:3" + }, + "returnParameters": { + "id": 4715, + "nodeType": "ParameterList", + "parameters": [], + "src": "3124:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4723, + "nodeType": "FunctionDefinition", + "src": "3269:46:3", + "functionSelector": "45b56078", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "startPrank", + "nameLocation": "3278:10:3", + "parameters": { + "id": 4721, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4718, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4723, + "src": "3289:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3289:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4720, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4723, + "src": "3297:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3297:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3288:17:3" + }, + "returnParameters": { + "id": 4722, + "nodeType": "ParameterList", + "parameters": [], + "src": "3314:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4726, + "nodeType": "FunctionDefinition", + "src": "3385:30:3", + "functionSelector": "90c5013b", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "stopPrank", + "nameLocation": "3394:9:3", + "parameters": { + "id": 4724, + "nodeType": "ParameterList", + "parameters": [], + "src": "3403:2:3" + }, + "returnParameters": { + "id": 4725, + "nodeType": "ParameterList", + "parameters": [], + "src": "3414:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4733, + "nodeType": "FunctionDefinition", + "src": "3471:41:3", + "functionSelector": "c88a5e6d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3480:4:3", + "parameters": { + "id": 4731, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4728, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4733, + "src": "3485:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4727, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3485:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4730, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4733, + "src": "3494:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4729, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3494:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3484:18:3" + }, + "returnParameters": { + "id": 4732, + "nodeType": "ParameterList", + "parameters": [], + "src": "3511:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4740, + "nodeType": "FunctionDefinition", + "src": "3562:48:3", + "functionSelector": "b4d6c782", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "etch", + "nameLocation": "3571:4:3", + "parameters": { + "id": 4738, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4735, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4740, + "src": "3576:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4734, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3576:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4737, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4740, + "src": "3585:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4736, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3585:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3575:25:3" + }, + "returnParameters": { + "id": 4739, + "nodeType": "ParameterList", + "parameters": [], + "src": "3609:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4745, + "nodeType": "FunctionDefinition", + "src": "3652:47:3", + "functionSelector": "f28dceb3", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectRevert", + "nameLocation": "3661:12:3", + "parameters": { + "id": 4743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4742, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4745, + "src": "3674:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4741, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3674:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "3673:16:3" + }, + "returnParameters": { + "id": 4744, + "nodeType": "ParameterList", + "parameters": [], + "src": "3698:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4750, + "nodeType": "FunctionDefinition", + "src": "3704:39:3", + "functionSelector": "c31eb0e0", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectRevert", + "nameLocation": "3713:12:3", + "parameters": { + "id": 4748, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4747, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4750, + "src": "3726:6:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 4746, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "3726:6:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "3725:8:3" + }, + "returnParameters": { + "id": 4749, + "nodeType": "ParameterList", + "parameters": [], + "src": "3742:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4753, + "nodeType": "FunctionDefinition", + "src": "3748:33:3", + "functionSelector": "f4844814", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectRevert", + "nameLocation": "3757:12:3", + "parameters": { + "id": 4751, + "nodeType": "ParameterList", + "parameters": [], + "src": "3769:2:3" + }, + "returnParameters": { + "id": 4752, + "nodeType": "ParameterList", + "parameters": [], + "src": "3780:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4756, + "nodeType": "FunctionDefinition", + "src": "3830:27:3", + "functionSelector": "266cf109", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "record", + "nameLocation": "3839:6:3", + "parameters": { + "id": 4754, + "nodeType": "ParameterList", + "parameters": [], + "src": "3845:2:3" + }, + "returnParameters": { + "id": 4755, + "nodeType": "ParameterList", + "parameters": [], + "src": "3856:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4767, + "nodeType": "FunctionDefinition", + "src": "3954:94:3", + "functionSelector": "65bc9481", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "accesses", + "nameLocation": "3963:8:3", + "parameters": { + "id": 4759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4758, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4767, + "src": "3972:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4757, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3972:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3971:9:3" + }, + "returnParameters": { + "id": 4766, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4762, + "mutability": "mutable", + "name": "reads", + "nameLocation": "4016:5:3", + "nodeType": "VariableDeclaration", + "scope": 4767, + "src": "3999:22:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4760, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "3999:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4761, + "nodeType": "ArrayTypeName", + "src": "3999:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4765, + "mutability": "mutable", + "name": "writes", + "nameLocation": "4040:6:3", + "nodeType": "VariableDeclaration", + "scope": 4767, + "src": "4023:23:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4763, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4023:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4764, + "nodeType": "ArrayTypeName", + "src": "4023:9:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "3998:49:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4778, + "nodeType": "FunctionDefinition", + "src": "4381:50:3", + "functionSelector": "491cc7c2", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectEmit", + "nameLocation": "4390:10:3", + "parameters": { + "id": 4776, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4769, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4778, + "src": "4401:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4768, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4401:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4771, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4778, + "src": "4406:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4770, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4406:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4773, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4778, + "src": "4411:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4772, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4411:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4775, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4778, + "src": "4416:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4774, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4416:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "4400:21:3" + }, + "returnParameters": { + "id": 4777, + "nodeType": "ParameterList", + "parameters": [], + "src": "4430:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4791, + "nodeType": "FunctionDefinition", + "src": "4436:58:3", + "functionSelector": "81bad6f3", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectEmit", + "nameLocation": "4445:10:3", + "parameters": { + "id": 4789, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4780, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4791, + "src": "4456:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4779, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4456:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4782, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4791, + "src": "4461:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4781, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4461:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4784, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4791, + "src": "4466:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4783, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4466:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4786, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4791, + "src": "4471:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4785, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "4471:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4788, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4791, + "src": "4476:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4787, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4476:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "4455:29:3" + }, + "returnParameters": { + "id": 4790, + "nodeType": "ParameterList", + "parameters": [], + "src": "4493:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4800, + "nodeType": "FunctionDefinition", + "src": "4749:66:3", + "functionSelector": "b96213e4", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "mockCall", + "nameLocation": "4758:8:3", + "parameters": { + "id": 4798, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4793, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4800, + "src": "4767:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4792, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4767:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4795, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4800, + "src": "4775:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4794, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4775:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4797, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4800, + "src": "4790:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4796, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "4790:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "4766:39:3" + }, + "returnParameters": { + "id": 4799, + "nodeType": "ParameterList", + "parameters": [], + "src": "4814:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4811, + "nodeType": "FunctionDefinition", + "src": "4983:74:3", + "functionSelector": "81409b91", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "mockCall", + "nameLocation": "4992:8:3", + "parameters": { + "id": 4809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4802, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4811, + "src": "5001:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4801, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5001:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4804, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4811, + "src": "5009:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5009:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4806, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4811, + "src": "5017:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4805, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5017:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4811, + "src": "5032:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4807, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5032:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5000:47:3" + }, + "returnParameters": { + "id": 4810, + "nodeType": "ParameterList", + "parameters": [], + "src": "5056:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4814, + "nodeType": "FunctionDefinition", + "src": "5093:37:3", + "functionSelector": "3fdf4e15", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "clearMockedCalls", + "nameLocation": "5102:16:3", + "parameters": { + "id": 4812, + "nodeType": "ParameterList", + "parameters": [], + "src": "5118:2:3" + }, + "returnParameters": { + "id": 4813, + "nodeType": "ParameterList", + "parameters": [], + "src": "5129:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4821, + "nodeType": "FunctionDefinition", + "src": "5258:53:3", + "functionSelector": "bd6af434", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectCall", + "nameLocation": "5267:10:3", + "parameters": { + "id": 4819, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4816, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4821, + "src": "5278:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4815, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5278:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4818, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4821, + "src": "5286:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4817, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5286:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5277:24:3" + }, + "returnParameters": { + "id": 4820, + "nodeType": "ParameterList", + "parameters": [], + "src": "5310:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4830, + "nodeType": "FunctionDefinition", + "src": "5394:61:3", + "functionSelector": "f30c7ba3", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "expectCall", + "nameLocation": "5403:10:3", + "parameters": { + "id": 4828, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4823, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4830, + "src": "5414:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5414:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4825, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4830, + "src": "5422:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4824, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5422:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4827, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4830, + "src": "5430:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4826, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5430:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5413:32:3" + }, + "returnParameters": { + "id": 4829, + "nodeType": "ParameterList", + "parameters": [], + "src": "5454:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4837, + "nodeType": "FunctionDefinition", + "src": "5548:66:3", + "functionSelector": "8d1cc925", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getCode", + "nameLocation": "5557:7:3", + "parameters": { + "id": 4833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4832, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4837, + "src": "5565:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4831, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5565:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5564:17:3" + }, + "returnParameters": { + "id": 4836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4835, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4837, + "src": "5600:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4834, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5600:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5599:14:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4844, + "nodeType": "FunctionDefinition", + "src": "5659:50:3", + "functionSelector": "c657c718", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "label", + "nameLocation": "5668:5:3", + "parameters": { + "id": 4842, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4839, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4844, + "src": "5674:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5674:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4841, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4844, + "src": "5683:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4840, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5683:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5673:26:3" + }, + "returnParameters": { + "id": 4843, + "nodeType": "ParameterList", + "parameters": [], + "src": "5708:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4849, + "nodeType": "FunctionDefinition", + "src": "5801:31:3", + "functionSelector": "4c63e562", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "assume", + "nameLocation": "5810:6:3", + "parameters": { + "id": 4847, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4846, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4849, + "src": "5817:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4845, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5817:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5816:6:3" + }, + "returnParameters": { + "id": 4848, + "nodeType": "ParameterList", + "parameters": [], + "src": "5831:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4854, + "nodeType": "FunctionDefinition", + "src": "5870:36:3", + "functionSelector": "ff483c54", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "coinbase", + "nameLocation": "5879:8:3", + "parameters": { + "id": 4852, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4851, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4854, + "src": "5888:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4850, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5888:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5887:9:3" + }, + "returnParameters": { + "id": 4853, + "nodeType": "ParameterList", + "parameters": [], + "src": "5905:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4857, + "nodeType": "FunctionDefinition", + "src": "6073:30:3", + "functionSelector": "afc98040", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "broadcast", + "nameLocation": "6082:9:3", + "parameters": { + "id": 4855, + "nodeType": "ParameterList", + "parameters": [], + "src": "6091:2:3" + }, + "returnParameters": { + "id": 4856, + "nodeType": "ParameterList", + "parameters": [], + "src": "6102:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4862, + "nodeType": "FunctionDefinition", + "src": "6262:37:3", + "functionSelector": "e6962cdb", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "broadcast", + "nameLocation": "6271:9:3", + "parameters": { + "id": 4860, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4859, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4862, + "src": "6281:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4858, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6281:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6280:9:3" + }, + "returnParameters": { + "id": 4861, + "nodeType": "ParameterList", + "parameters": [], + "src": "6298:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4865, + "nodeType": "FunctionDefinition", + "src": "6472:35:3", + "functionSelector": "7fb5297f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "startBroadcast", + "nameLocation": "6481:14:3", + "parameters": { + "id": 4863, + "nodeType": "ParameterList", + "parameters": [], + "src": "6495:2:3" + }, + "returnParameters": { + "id": 4864, + "nodeType": "ParameterList", + "parameters": [], + "src": "6506:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4870, + "nodeType": "FunctionDefinition", + "src": "6632:42:3", + "functionSelector": "7fec2a8d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "startBroadcast", + "nameLocation": "6641:14:3", + "parameters": { + "id": 4868, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4867, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4870, + "src": "6656:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4866, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6656:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6655:9:3" + }, + "returnParameters": { + "id": 4869, + "nodeType": "ParameterList", + "parameters": [], + "src": "6673:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4873, + "nodeType": "FunctionDefinition", + "src": "6724:34:3", + "functionSelector": "76eadd36", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "stopBroadcast", + "nameLocation": "6733:13:3", + "parameters": { + "id": 4871, + "nodeType": "ParameterList", + "parameters": [], + "src": "6746:2:3" + }, + "returnParameters": { + "id": 4872, + "nodeType": "ParameterList", + "parameters": [], + "src": "6757:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4880, + "nodeType": "FunctionDefinition", + "src": "6831:68:3", + "functionSelector": "60f9bb11", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "readFile", + "nameLocation": "6840:8:3", + "parameters": { + "id": 4876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4875, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4880, + "src": "6849:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4874, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6849:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6848:17:3" + }, + "returnParameters": { + "id": 4879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4878, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4880, + "src": "6884:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4877, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6884:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6883:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4887, + "nodeType": "FunctionDefinition", + "src": "6963:68:3", + "functionSelector": "70f55728", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "readLine", + "nameLocation": "6972:8:3", + "parameters": { + "id": 4883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4882, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4887, + "src": "6981:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4881, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6981:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6980:17:3" + }, + "returnParameters": { + "id": 4886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4885, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4887, + "src": "7016:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4884, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7016:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7015:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4894, + "nodeType": "FunctionDefinition", + "src": "7176:62:3", + "functionSelector": "897e0a97", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "writeFile", + "nameLocation": "7185:9:3", + "parameters": { + "id": 4892, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4889, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4894, + "src": "7195:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4888, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7195:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4891, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4894, + "src": "7212:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4890, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7212:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7194:34:3" + }, + "returnParameters": { + "id": 4893, + "nodeType": "ParameterList", + "parameters": [], + "src": "7237:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4901, + "nodeType": "FunctionDefinition", + "src": "7335:62:3", + "functionSelector": "619d897f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "writeLine", + "nameLocation": "7344:9:3", + "parameters": { + "id": 4899, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4896, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4901, + "src": "7354:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7354:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4898, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4901, + "src": "7371:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4897, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7371:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7353:34:3" + }, + "returnParameters": { + "id": 4900, + "nodeType": "ParameterList", + "parameters": [], + "src": "7396:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4906, + "nodeType": "FunctionDefinition", + "src": "7529:45:3", + "functionSelector": "48c3241f", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "closeFile", + "nameLocation": "7538:9:3", + "parameters": { + "id": 4904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4903, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4906, + "src": "7548:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4902, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7548:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7547:17:3" + }, + "returnParameters": { + "id": 4905, + "nodeType": "ParameterList", + "parameters": [], + "src": "7573:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4911, + "nodeType": "FunctionDefinition", + "src": "7842:46:3", + "functionSelector": "f1afe04d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "removeFile", + "nameLocation": "7851:10:3", + "parameters": { + "id": 4909, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4908, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4911, + "src": "7862:15:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_string_calldata_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4907, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7862:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7861:17:3" + }, + "returnParameters": { + "id": 4910, + "nodeType": "ParameterList", + "parameters": [], + "src": "7887:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4918, + "nodeType": "FunctionDefinition", + "src": "7959:59:3", + "functionSelector": "56ca623e", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "7968:8:3", + "parameters": { + "id": 4914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4913, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4918, + "src": "7977:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4912, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7977:7:3", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7976:9:3" + }, + "returnParameters": { + "id": 4917, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4916, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4918, + "src": "8003:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4915, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8003:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8002:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4925, + "nodeType": "FunctionDefinition", + "src": "8023:66:3", + "functionSelector": "71aad10d", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "8032:8:3", + "parameters": { + "id": 4921, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4920, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "8041:14:3", + "stateVariable": false, + "storageLocation": "calldata", + "typeDescriptions": { + "typeIdentifier": "t_bytes_calldata_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4919, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "8041:5:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "8040:16:3" + }, + "returnParameters": { + "id": 4924, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4923, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4925, + "src": "8074:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4922, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8074:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8073:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4932, + "nodeType": "FunctionDefinition", + "src": "8094:59:3", + "functionSelector": "b11a19e8", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "8103:8:3", + "parameters": { + "id": 4928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4927, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4932, + "src": "8112:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4926, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "8112:7:3", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "8111:9:3" + }, + "returnParameters": { + "id": 4931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4930, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4932, + "src": "8138:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4929, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8138:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8137:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4939, + "nodeType": "FunctionDefinition", + "src": "8158:56:3", + "functionSelector": "71dce7da", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "8167:8:3", + "parameters": { + "id": 4935, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4934, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4939, + "src": "8176:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4933, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8176:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8175:6:3" + }, + "returnParameters": { + "id": 4938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4937, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4939, + "src": "8199:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4936, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8199:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8198:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4946, + "nodeType": "FunctionDefinition", + "src": "8219:59:3", + "functionSelector": "6900a3ae", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "8228:8:3", + "parameters": { + "id": 4942, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4941, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4946, + "src": "8237:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4940, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8237:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8236:9:3" + }, + "returnParameters": { + "id": 4945, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4944, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4946, + "src": "8263:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4943, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8263:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8262:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4953, + "nodeType": "FunctionDefinition", + "src": "8283:58:3", + "functionSelector": "a322c40e", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "toString", + "nameLocation": "8292:8:3", + "parameters": { + "id": 4949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4948, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4953, + "src": "8301:6:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4947, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8301:6:3", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "8300:8:3" + }, + "returnParameters": { + "id": 4952, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4951, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4953, + "src": "8326:13:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4950, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8326:6:3", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8325:15:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4956, + "nodeType": "FunctionDefinition", + "src": "8385:31:3", + "functionSelector": "41af2f52", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "recordLogs", + "nameLocation": "8394:10:3", + "parameters": { + "id": 4954, + "nodeType": "ParameterList", + "parameters": [], + "src": "8404:2:3" + }, + "returnParameters": { + "id": 4955, + "nodeType": "ParameterList", + "parameters": [], + "src": "8415:0:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + }, + { + "id": 4963, + "nodeType": "FunctionDefinition", + "src": "8469:59:3", + "functionSelector": "191553a4", + "implemented": false, + "kind": "function", + "modifiers": [], + "name": "getRecordedLogs", + "nameLocation": "8478:15:3", + "parameters": { + "id": 4957, + "nodeType": "ParameterList", + "parameters": [], + "src": "8493:2:3" + }, + "returnParameters": { + "id": 4962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4961, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4963, + "src": "8514:12:3", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Log_$4493_memory_ptr_$dyn_memory_ptr", + "typeString": "struct Vm.Log[]" + }, + "typeName": { + "baseType": { + "id": 4959, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4958, + "name": "Log", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4493, + "src": "8514:3:3" + }, + "referencedDeclaration": 4493, + "src": "8514:3:3", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Log_$4493_storage_ptr", + "typeString": "struct Vm.Log" + } + }, + "id": 4960, + "nodeType": "ArrayTypeName", + "src": "8514:5:3", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Log_$4493_storage_$dyn_storage_ptr", + "typeString": "struct Vm.Log[]" + } + }, + "visibility": "internal" + } + ], + "src": "8513:14:3" + }, + "scope": 4964, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "external" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "Vm", + "contractDependencies": [], + "contractKind": "interface", + "fullyImplemented": false, + "linearizedBaseContracts": [ + 4964 + ], + "name": "Vm", + "nameLocation": "108:2:3", + "scope": 4965, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 3 +} \ No newline at end of file diff --git a/getting-started/foundry/out/console.sol/console.json b/getting-started/foundry/out/console.sol/console.json new file mode 100644 index 00000000..5701d462 --- /dev/null +++ b/getting-started/foundry/out/console.sol/console.json @@ -0,0 +1,109680 @@ +{ + "abi": [], + "bytecode": { + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202a9e8b921a14f3d800e1a87820e260d76b901a96d2e266325e855be15287fdbf64736f6c634300080d0033", + "sourceMap": "66:66622:4:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;66:66622:4;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202a9e8b921a14f3d800e1a87820e260d76b901a96d2e266325e855be15287fdbf64736f6c634300080d0033", + "sourceMap": "66:66622:4:-:0;;;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "lib/forge-std/src/console.sol", + "id": 13029, + "exportedSymbols": { + "console": [ + 13028 + ] + }, + "nodeType": "SourceUnit", + "src": "32:66656:4", + "nodes": [ + { + "id": 4966, + "nodeType": "PragmaDirective", + "src": "32:32:4", + "literals": [ + "solidity", + ">=", + "0.4", + ".22", + "<", + "0.9", + ".0" + ] + }, + { + "id": 13028, + "nodeType": "ContractDefinition", + "src": "66:66622:4", + "nodes": [ + { + "id": 4972, + "nodeType": "VariableDeclaration", + "src": "88:86:4", + "constant": true, + "mutability": "constant", + "name": "CONSOLE_ADDRESS", + "nameLocation": "105:15:4", + "scope": 13028, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4967, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "88:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "arguments": [ + { + "hexValue": "307830303030303030303030303030303030303036333646366537333646366336353265366336663637", + "id": 4970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "131:42:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x000000000000000000636F6e736F6c652e6c6f67" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 4969, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "123:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4968, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "123:7:4", + "typeDescriptions": {} + } + }, + "id": 4971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "123:51:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "id": 4988, + "nodeType": "FunctionDefinition", + "src": "181:376:4", + "body": { + "id": 4987, + "nodeType": "Block", + "src": "241:316:4", + "statements": [ + { + "assignments": [ + 4978 + ], + "declarations": [ + { + "constant": false, + "id": 4978, + "mutability": "mutable", + "name": "payloadLength", + "nameLocation": "259:13:4", + "nodeType": "VariableDeclaration", + "scope": 4987, + "src": "251:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4977, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "251:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4981, + "initialValue": { + "expression": { + "id": 4979, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4974, + "src": "275:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "275:14:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "251:38:4" + }, + { + "assignments": [ + 4983 + ], + "declarations": [ + { + "constant": false, + "id": 4983, + "mutability": "mutable", + "name": "consoleAddress", + "nameLocation": "307:14:4", + "nodeType": "VariableDeclaration", + "scope": 4987, + "src": "299:22:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4982, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "299:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4985, + "initialValue": { + "id": 4984, + "name": "CONSOLE_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4972, + "src": "324:15:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "299:40:4" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "401:150:4", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "415:36:4", + "value": { + "arguments": [ + { + "name": "payload", + "nodeType": "YulIdentifier", + "src": "439:7:4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "448:2:4", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "435:3:4" + }, + "nodeType": "YulFunctionCall", + "src": "435:16:4" + }, + "variables": [ + { + "name": "payloadStart", + "nodeType": "YulTypedName", + "src": "419:12:4", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "464:77:4", + "value": { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "gas", + "nodeType": "YulIdentifier", + "src": "484:3:4" + }, + "nodeType": "YulFunctionCall", + "src": "484:5:4" + }, + { + "name": "consoleAddress", + "nodeType": "YulIdentifier", + "src": "491:14:4" + }, + { + "name": "payloadStart", + "nodeType": "YulIdentifier", + "src": "507:12:4" + }, + { + "name": "payloadLength", + "nodeType": "YulIdentifier", + "src": "521:13:4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "536:1:4", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "539:1:4", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "staticcall", + "nodeType": "YulIdentifier", + "src": "473:10:4" + }, + "nodeType": "YulFunctionCall", + "src": "473:68:4" + }, + "variables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "468:1:4", + "type": "" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 4983, + "isOffset": false, + "isSlot": false, + "src": "491:14:4", + "valueSize": 1 + }, + { + "declaration": 4974, + "isOffset": false, + "isSlot": false, + "src": "439:7:4", + "valueSize": 1 + }, + { + "declaration": 4978, + "isOffset": false, + "isSlot": false, + "src": "521:13:4", + "valueSize": 1 + } + ], + "id": 4986, + "nodeType": "InlineAssembly", + "src": "392:159:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_sendLogPayload", + "nameLocation": "190:15:4", + "parameters": { + "id": 4975, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4974, + "mutability": "mutable", + "name": "payload", + "nameLocation": "219:7:4", + "nodeType": "VariableDeclaration", + "scope": 4988, + "src": "206:20:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4973, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "206:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "205:22:4" + }, + "returnParameters": { + "id": 4976, + "nodeType": "ParameterList", + "parameters": [], + "src": "241:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "id": 4999, + "nodeType": "FunctionDefinition", + "src": "563:95:4", + "body": { + "id": 4998, + "nodeType": "Block", + "src": "592:66:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672829", + "id": 4994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "642:7:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + }, + "value": "log()" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + } + ], + "expression": { + "id": 4992, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "618:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "618:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 4995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "618:32:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4991, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "602:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 4996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "602:49:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4997, + "nodeType": "ExpressionStatement", + "src": "602:49:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "572:3:4", + "parameters": { + "id": 4989, + "nodeType": "ParameterList", + "parameters": [], + "src": "575:2:4" + }, + "returnParameters": { + "id": 4990, + "nodeType": "ParameterList", + "parameters": [], + "src": "592:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5013, + "nodeType": "FunctionDefinition", + "src": "664:111:4", + "body": { + "id": 5012, + "nodeType": "Block", + "src": "702:73:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728696e7429", + "id": 5007, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "752:10:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e0c1d1dcf573259576e2a7e591d366143f88fb7f7e57df09852da9c36797f2e", + "typeString": "literal_string \"log(int)\"" + }, + "value": "log(int)" + }, + { + "id": 5008, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5001, + "src": "764:2:4", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e0c1d1dcf573259576e2a7e591d366143f88fb7f7e57df09852da9c36797f2e", + "typeString": "literal_string \"log(int)\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 5005, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "728:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "728:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "728:39:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5004, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "712:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "712:56:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5011, + "nodeType": "ExpressionStatement", + "src": "712:56:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logInt", + "nameLocation": "673:6:4", + "parameters": { + "id": 5002, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5001, + "mutability": "mutable", + "name": "p0", + "nameLocation": "684:2:4", + "nodeType": "VariableDeclaration", + "scope": 5013, + "src": "680:6:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 5000, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "680:3:4", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "679:8:4" + }, + "returnParameters": { + "id": 5003, + "nodeType": "ParameterList", + "parameters": [], + "src": "702:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5027, + "nodeType": "FunctionDefinition", + "src": "781:114:4", + "body": { + "id": 5026, + "nodeType": "Block", + "src": "821:74:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7429", + "id": 5021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "871:11:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f5b1bba92d8f98cf25e27c94d7fc7cbfbae95a49dfe5ab0cdf64ddd7181bb984", + "typeString": "literal_string \"log(uint)\"" + }, + "value": "log(uint)" + }, + { + "id": 5022, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5015, + "src": "884:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f5b1bba92d8f98cf25e27c94d7fc7cbfbae95a49dfe5ab0cdf64ddd7181bb984", + "typeString": "literal_string \"log(uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5019, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "847:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "847:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "847:40:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5018, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "831:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "831:57:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5025, + "nodeType": "ExpressionStatement", + "src": "831:57:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logUint", + "nameLocation": "790:7:4", + "parameters": { + "id": 5016, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5015, + "mutability": "mutable", + "name": "p0", + "nameLocation": "803:2:4", + "nodeType": "VariableDeclaration", + "scope": 5027, + "src": "798:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5014, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "798:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "797:9:4" + }, + "returnParameters": { + "id": 5017, + "nodeType": "ParameterList", + "parameters": [], + "src": "821:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5041, + "nodeType": "FunctionDefinition", + "src": "901:127:4", + "body": { + "id": 5040, + "nodeType": "Block", + "src": "952:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 5035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1002:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 5036, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5029, + "src": "1017:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5033, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "978:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "978:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5037, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "978:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5032, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "962:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5038, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "962:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5039, + "nodeType": "ExpressionStatement", + "src": "962:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logString", + "nameLocation": "910:9:4", + "parameters": { + "id": 5030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5029, + "mutability": "mutable", + "name": "p0", + "nameLocation": "934:2:4", + "nodeType": "VariableDeclaration", + "scope": 5041, + "src": "920:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5028, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "920:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "919:18:4" + }, + "returnParameters": { + "id": 5031, + "nodeType": "ParameterList", + "parameters": [], + "src": "952:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5055, + "nodeType": "FunctionDefinition", + "src": "1034:114:4", + "body": { + "id": 5054, + "nodeType": "Block", + "src": "1074:74:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 5049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1124:11:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 5050, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5043, + "src": "1137:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5047, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1100:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5048, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1100:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1100:40:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5046, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1084:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1084:57:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5053, + "nodeType": "ExpressionStatement", + "src": "1084:57:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBool", + "nameLocation": "1043:7:4", + "parameters": { + "id": 5044, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5043, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1056:2:4", + "nodeType": "VariableDeclaration", + "scope": 5055, + "src": "1051:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5042, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1051:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1050:9:4" + }, + "returnParameters": { + "id": 5045, + "nodeType": "ParameterList", + "parameters": [], + "src": "1074:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5069, + "nodeType": "FunctionDefinition", + "src": "1154:123:4", + "body": { + "id": 5068, + "nodeType": "Block", + "src": "1200:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 5063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1250:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 5064, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5057, + "src": "1266:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5061, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1226:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1226:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1226:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5060, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1210:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1210:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5067, + "nodeType": "ExpressionStatement", + "src": "1210:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logAddress", + "nameLocation": "1163:10:4", + "parameters": { + "id": 5058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5057, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1182:2:4", + "nodeType": "VariableDeclaration", + "scope": 5069, + "src": "1174:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5056, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1174:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1173:12:4" + }, + "returnParameters": { + "id": 5059, + "nodeType": "ParameterList", + "parameters": [], + "src": "1200:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5083, + "nodeType": "FunctionDefinition", + "src": "1283:124:4", + "body": { + "id": 5082, + "nodeType": "Block", + "src": "1332:75:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728627974657329", + "id": 5077, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1382:12:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + "value": "log(bytes)" + }, + { + "id": 5078, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5071, + "src": "1396:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 5075, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1358:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1358:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1358:41:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5074, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1342:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1342:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5081, + "nodeType": "ExpressionStatement", + "src": "1342:58:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes", + "nameLocation": "1292:8:4", + "parameters": { + "id": 5072, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5071, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1314:2:4", + "nodeType": "VariableDeclaration", + "scope": 5083, + "src": "1301:15:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 5070, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1301:5:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1300:17:4" + }, + "returnParameters": { + "id": 5073, + "nodeType": "ParameterList", + "parameters": [], + "src": "1332:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5097, + "nodeType": "FunctionDefinition", + "src": "1413:120:4", + "body": { + "id": 5096, + "nodeType": "Block", + "src": "1457:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733129", + "id": 5091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1507:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + "value": "log(bytes1)" + }, + { + "id": 5092, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5085, + "src": "1522:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "expression": { + "id": 5089, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1483:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1483:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1483:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5088, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1467:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1467:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5095, + "nodeType": "ExpressionStatement", + "src": "1467:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes1", + "nameLocation": "1422:9:4", + "parameters": { + "id": 5086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5085, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1439:2:4", + "nodeType": "VariableDeclaration", + "scope": 5097, + "src": "1432:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 5084, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1432:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + } + ], + "src": "1431:11:4" + }, + "returnParameters": { + "id": 5087, + "nodeType": "ParameterList", + "parameters": [], + "src": "1457:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5111, + "nodeType": "FunctionDefinition", + "src": "1539:120:4", + "body": { + "id": 5110, + "nodeType": "Block", + "src": "1583:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733229", + "id": 5105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1633:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + "value": "log(bytes2)" + }, + { + "id": 5106, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5099, + "src": "1648:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + ], + "expression": { + "id": 5103, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1609:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1609:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5107, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1609:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5102, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1593:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1593:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5109, + "nodeType": "ExpressionStatement", + "src": "1593:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes2", + "nameLocation": "1548:9:4", + "parameters": { + "id": 5100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5099, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1565:2:4", + "nodeType": "VariableDeclaration", + "scope": 5111, + "src": "1558:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + }, + "typeName": { + "id": 5098, + "name": "bytes2", + "nodeType": "ElementaryTypeName", + "src": "1558:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + }, + "visibility": "internal" + } + ], + "src": "1557:11:4" + }, + "returnParameters": { + "id": 5101, + "nodeType": "ParameterList", + "parameters": [], + "src": "1583:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5125, + "nodeType": "FunctionDefinition", + "src": "1665:120:4", + "body": { + "id": 5124, + "nodeType": "Block", + "src": "1709:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733329", + "id": 5119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1759:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + "value": "log(bytes3)" + }, + { + "id": 5120, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5113, + "src": "1774:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + ], + "expression": { + "id": 5117, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1735:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1735:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1735:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5116, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1719:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1719:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5123, + "nodeType": "ExpressionStatement", + "src": "1719:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes3", + "nameLocation": "1674:9:4", + "parameters": { + "id": 5114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5113, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1691:2:4", + "nodeType": "VariableDeclaration", + "scope": 5125, + "src": "1684:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + }, + "typeName": { + "id": 5112, + "name": "bytes3", + "nodeType": "ElementaryTypeName", + "src": "1684:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + }, + "visibility": "internal" + } + ], + "src": "1683:11:4" + }, + "returnParameters": { + "id": 5115, + "nodeType": "ParameterList", + "parameters": [], + "src": "1709:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5139, + "nodeType": "FunctionDefinition", + "src": "1791:120:4", + "body": { + "id": 5138, + "nodeType": "Block", + "src": "1835:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733429", + "id": 5133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1885:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + "value": "log(bytes4)" + }, + { + "id": 5134, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5127, + "src": "1900:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 5131, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1861:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1861:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1861:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5130, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1845:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1845:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5137, + "nodeType": "ExpressionStatement", + "src": "1845:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes4", + "nameLocation": "1800:9:4", + "parameters": { + "id": 5128, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5127, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1817:2:4", + "nodeType": "VariableDeclaration", + "scope": 5139, + "src": "1810:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 5126, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "1810:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "1809:11:4" + }, + "returnParameters": { + "id": 5129, + "nodeType": "ParameterList", + "parameters": [], + "src": "1835:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5153, + "nodeType": "FunctionDefinition", + "src": "1917:120:4", + "body": { + "id": 5152, + "nodeType": "Block", + "src": "1961:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733529", + "id": 5147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2011:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + "value": "log(bytes5)" + }, + { + "id": 5148, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5141, + "src": "2026:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + ], + "expression": { + "id": 5145, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1987:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1987:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1987:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5144, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "1971:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5150, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1971:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5151, + "nodeType": "ExpressionStatement", + "src": "1971:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes5", + "nameLocation": "1926:9:4", + "parameters": { + "id": 5142, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5141, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1943:2:4", + "nodeType": "VariableDeclaration", + "scope": 5153, + "src": "1936:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + }, + "typeName": { + "id": 5140, + "name": "bytes5", + "nodeType": "ElementaryTypeName", + "src": "1936:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + }, + "visibility": "internal" + } + ], + "src": "1935:11:4" + }, + "returnParameters": { + "id": 5143, + "nodeType": "ParameterList", + "parameters": [], + "src": "1961:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5167, + "nodeType": "FunctionDefinition", + "src": "2043:120:4", + "body": { + "id": 5166, + "nodeType": "Block", + "src": "2087:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733629", + "id": 5161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2137:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + "value": "log(bytes6)" + }, + { + "id": 5162, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5155, + "src": "2152:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + ], + "expression": { + "id": 5159, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2113:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2113:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2113:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5158, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2097:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5164, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2097:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5165, + "nodeType": "ExpressionStatement", + "src": "2097:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes6", + "nameLocation": "2052:9:4", + "parameters": { + "id": 5156, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5155, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2069:2:4", + "nodeType": "VariableDeclaration", + "scope": 5167, + "src": "2062:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + }, + "typeName": { + "id": 5154, + "name": "bytes6", + "nodeType": "ElementaryTypeName", + "src": "2062:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + }, + "visibility": "internal" + } + ], + "src": "2061:11:4" + }, + "returnParameters": { + "id": 5157, + "nodeType": "ParameterList", + "parameters": [], + "src": "2087:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5181, + "nodeType": "FunctionDefinition", + "src": "2169:120:4", + "body": { + "id": 5180, + "nodeType": "Block", + "src": "2213:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733729", + "id": 5175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2263:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + "value": "log(bytes7)" + }, + { + "id": 5176, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5169, + "src": "2278:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + ], + "expression": { + "id": 5173, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2239:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2239:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2239:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5172, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2223:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2223:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5179, + "nodeType": "ExpressionStatement", + "src": "2223:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes7", + "nameLocation": "2178:9:4", + "parameters": { + "id": 5170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5169, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2195:2:4", + "nodeType": "VariableDeclaration", + "scope": 5181, + "src": "2188:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + }, + "typeName": { + "id": 5168, + "name": "bytes7", + "nodeType": "ElementaryTypeName", + "src": "2188:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + }, + "visibility": "internal" + } + ], + "src": "2187:11:4" + }, + "returnParameters": { + "id": 5171, + "nodeType": "ParameterList", + "parameters": [], + "src": "2213:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5195, + "nodeType": "FunctionDefinition", + "src": "2295:120:4", + "body": { + "id": 5194, + "nodeType": "Block", + "src": "2339:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733829", + "id": 5189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2389:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + "value": "log(bytes8)" + }, + { + "id": 5190, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5183, + "src": "2404:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + ], + "expression": { + "id": 5187, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2365:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2365:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2365:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5186, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2349:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5192, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2349:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5193, + "nodeType": "ExpressionStatement", + "src": "2349:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes8", + "nameLocation": "2304:9:4", + "parameters": { + "id": 5184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5183, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2321:2:4", + "nodeType": "VariableDeclaration", + "scope": 5195, + "src": "2314:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + }, + "typeName": { + "id": 5182, + "name": "bytes8", + "nodeType": "ElementaryTypeName", + "src": "2314:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + }, + "visibility": "internal" + } + ], + "src": "2313:11:4" + }, + "returnParameters": { + "id": 5185, + "nodeType": "ParameterList", + "parameters": [], + "src": "2339:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5209, + "nodeType": "FunctionDefinition", + "src": "2421:120:4", + "body": { + "id": 5208, + "nodeType": "Block", + "src": "2465:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733929", + "id": 5203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2515:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + "value": "log(bytes9)" + }, + { + "id": 5204, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5197, + "src": "2530:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + ], + "expression": { + "id": 5201, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2491:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5202, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2491:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2491:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5200, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2475:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2475:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5207, + "nodeType": "ExpressionStatement", + "src": "2475:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes9", + "nameLocation": "2430:9:4", + "parameters": { + "id": 5198, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5197, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2447:2:4", + "nodeType": "VariableDeclaration", + "scope": 5209, + "src": "2440:9:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + }, + "typeName": { + "id": 5196, + "name": "bytes9", + "nodeType": "ElementaryTypeName", + "src": "2440:6:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + }, + "visibility": "internal" + } + ], + "src": "2439:11:4" + }, + "returnParameters": { + "id": 5199, + "nodeType": "ParameterList", + "parameters": [], + "src": "2465:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5223, + "nodeType": "FunctionDefinition", + "src": "2547:123:4", + "body": { + "id": 5222, + "nodeType": "Block", + "src": "2593:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313029", + "id": 5217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2643:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + "value": "log(bytes10)" + }, + { + "id": 5218, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5211, + "src": "2659:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + ], + "expression": { + "id": 5215, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2619:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2619:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2619:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5214, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2603:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2603:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5221, + "nodeType": "ExpressionStatement", + "src": "2603:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes10", + "nameLocation": "2556:10:4", + "parameters": { + "id": 5212, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5211, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2575:2:4", + "nodeType": "VariableDeclaration", + "scope": 5223, + "src": "2567:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + }, + "typeName": { + "id": 5210, + "name": "bytes10", + "nodeType": "ElementaryTypeName", + "src": "2567:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + }, + "visibility": "internal" + } + ], + "src": "2566:12:4" + }, + "returnParameters": { + "id": 5213, + "nodeType": "ParameterList", + "parameters": [], + "src": "2593:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5237, + "nodeType": "FunctionDefinition", + "src": "2676:123:4", + "body": { + "id": 5236, + "nodeType": "Block", + "src": "2722:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313129", + "id": 5231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2772:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + "value": "log(bytes11)" + }, + { + "id": 5232, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5225, + "src": "2788:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + ], + "expression": { + "id": 5229, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2748:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2748:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5233, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2748:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5228, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2732:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2732:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5235, + "nodeType": "ExpressionStatement", + "src": "2732:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes11", + "nameLocation": "2685:10:4", + "parameters": { + "id": 5226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5225, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2704:2:4", + "nodeType": "VariableDeclaration", + "scope": 5237, + "src": "2696:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + }, + "typeName": { + "id": 5224, + "name": "bytes11", + "nodeType": "ElementaryTypeName", + "src": "2696:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + }, + "visibility": "internal" + } + ], + "src": "2695:12:4" + }, + "returnParameters": { + "id": 5227, + "nodeType": "ParameterList", + "parameters": [], + "src": "2722:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5251, + "nodeType": "FunctionDefinition", + "src": "2805:123:4", + "body": { + "id": 5250, + "nodeType": "Block", + "src": "2851:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313229", + "id": 5245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2901:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + "value": "log(bytes12)" + }, + { + "id": 5246, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5239, + "src": "2917:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + ], + "expression": { + "id": 5243, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2877:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2877:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2877:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5242, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2861:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2861:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5249, + "nodeType": "ExpressionStatement", + "src": "2861:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes12", + "nameLocation": "2814:10:4", + "parameters": { + "id": 5240, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5239, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2833:2:4", + "nodeType": "VariableDeclaration", + "scope": 5251, + "src": "2825:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + }, + "typeName": { + "id": 5238, + "name": "bytes12", + "nodeType": "ElementaryTypeName", + "src": "2825:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + }, + "visibility": "internal" + } + ], + "src": "2824:12:4" + }, + "returnParameters": { + "id": 5241, + "nodeType": "ParameterList", + "parameters": [], + "src": "2851:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5265, + "nodeType": "FunctionDefinition", + "src": "2934:123:4", + "body": { + "id": 5264, + "nodeType": "Block", + "src": "2980:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313329", + "id": 5259, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3030:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + "value": "log(bytes13)" + }, + { + "id": 5260, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5253, + "src": "3046:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + ], + "expression": { + "id": 5257, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3006:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3006:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3006:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5256, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "2990:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2990:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5263, + "nodeType": "ExpressionStatement", + "src": "2990:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes13", + "nameLocation": "2943:10:4", + "parameters": { + "id": 5254, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5253, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2962:2:4", + "nodeType": "VariableDeclaration", + "scope": 5265, + "src": "2954:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + }, + "typeName": { + "id": 5252, + "name": "bytes13", + "nodeType": "ElementaryTypeName", + "src": "2954:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + }, + "visibility": "internal" + } + ], + "src": "2953:12:4" + }, + "returnParameters": { + "id": 5255, + "nodeType": "ParameterList", + "parameters": [], + "src": "2980:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5279, + "nodeType": "FunctionDefinition", + "src": "3063:123:4", + "body": { + "id": 5278, + "nodeType": "Block", + "src": "3109:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313429", + "id": 5273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3159:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + "value": "log(bytes14)" + }, + { + "id": 5274, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5267, + "src": "3175:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + ], + "expression": { + "id": 5271, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3135:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3135:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3135:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5270, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3119:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3119:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5277, + "nodeType": "ExpressionStatement", + "src": "3119:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes14", + "nameLocation": "3072:10:4", + "parameters": { + "id": 5268, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5267, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3091:2:4", + "nodeType": "VariableDeclaration", + "scope": 5279, + "src": "3083:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + }, + "typeName": { + "id": 5266, + "name": "bytes14", + "nodeType": "ElementaryTypeName", + "src": "3083:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + }, + "visibility": "internal" + } + ], + "src": "3082:12:4" + }, + "returnParameters": { + "id": 5269, + "nodeType": "ParameterList", + "parameters": [], + "src": "3109:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5293, + "nodeType": "FunctionDefinition", + "src": "3192:123:4", + "body": { + "id": 5292, + "nodeType": "Block", + "src": "3238:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313529", + "id": 5287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3288:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + "value": "log(bytes15)" + }, + { + "id": 5288, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5281, + "src": "3304:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + ], + "expression": { + "id": 5285, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3264:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3264:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3264:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5284, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3248:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3248:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5291, + "nodeType": "ExpressionStatement", + "src": "3248:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes15", + "nameLocation": "3201:10:4", + "parameters": { + "id": 5282, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5281, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3220:2:4", + "nodeType": "VariableDeclaration", + "scope": 5293, + "src": "3212:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + }, + "typeName": { + "id": 5280, + "name": "bytes15", + "nodeType": "ElementaryTypeName", + "src": "3212:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + }, + "visibility": "internal" + } + ], + "src": "3211:12:4" + }, + "returnParameters": { + "id": 5283, + "nodeType": "ParameterList", + "parameters": [], + "src": "3238:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5307, + "nodeType": "FunctionDefinition", + "src": "3321:123:4", + "body": { + "id": 5306, + "nodeType": "Block", + "src": "3367:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313629", + "id": 5301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3417:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + "value": "log(bytes16)" + }, + { + "id": 5302, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5295, + "src": "3433:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + ], + "expression": { + "id": 5299, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3393:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3393:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3393:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5298, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3377:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3377:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5305, + "nodeType": "ExpressionStatement", + "src": "3377:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes16", + "nameLocation": "3330:10:4", + "parameters": { + "id": 5296, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5295, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3349:2:4", + "nodeType": "VariableDeclaration", + "scope": 5307, + "src": "3341:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + }, + "typeName": { + "id": 5294, + "name": "bytes16", + "nodeType": "ElementaryTypeName", + "src": "3341:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + }, + "visibility": "internal" + } + ], + "src": "3340:12:4" + }, + "returnParameters": { + "id": 5297, + "nodeType": "ParameterList", + "parameters": [], + "src": "3367:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5321, + "nodeType": "FunctionDefinition", + "src": "3450:123:4", + "body": { + "id": 5320, + "nodeType": "Block", + "src": "3496:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313729", + "id": 5315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3546:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + "value": "log(bytes17)" + }, + { + "id": 5316, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5309, + "src": "3562:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + ], + "expression": { + "id": 5313, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3522:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3522:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3522:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5312, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3506:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3506:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5319, + "nodeType": "ExpressionStatement", + "src": "3506:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes17", + "nameLocation": "3459:10:4", + "parameters": { + "id": 5310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5309, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3478:2:4", + "nodeType": "VariableDeclaration", + "scope": 5321, + "src": "3470:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + }, + "typeName": { + "id": 5308, + "name": "bytes17", + "nodeType": "ElementaryTypeName", + "src": "3470:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + }, + "visibility": "internal" + } + ], + "src": "3469:12:4" + }, + "returnParameters": { + "id": 5311, + "nodeType": "ParameterList", + "parameters": [], + "src": "3496:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5335, + "nodeType": "FunctionDefinition", + "src": "3579:123:4", + "body": { + "id": 5334, + "nodeType": "Block", + "src": "3625:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313829", + "id": 5329, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3675:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + "value": "log(bytes18)" + }, + { + "id": 5330, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5323, + "src": "3691:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + ], + "expression": { + "id": 5327, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3651:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5328, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3651:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3651:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5326, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3635:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3635:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5333, + "nodeType": "ExpressionStatement", + "src": "3635:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes18", + "nameLocation": "3588:10:4", + "parameters": { + "id": 5324, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5323, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3607:2:4", + "nodeType": "VariableDeclaration", + "scope": 5335, + "src": "3599:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + }, + "typeName": { + "id": 5322, + "name": "bytes18", + "nodeType": "ElementaryTypeName", + "src": "3599:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + }, + "visibility": "internal" + } + ], + "src": "3598:12:4" + }, + "returnParameters": { + "id": 5325, + "nodeType": "ParameterList", + "parameters": [], + "src": "3625:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5349, + "nodeType": "FunctionDefinition", + "src": "3708:123:4", + "body": { + "id": 5348, + "nodeType": "Block", + "src": "3754:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313929", + "id": 5343, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3804:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + "value": "log(bytes19)" + }, + { + "id": 5344, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5337, + "src": "3820:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + ], + "expression": { + "id": 5341, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3780:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3780:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3780:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5340, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3764:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3764:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5347, + "nodeType": "ExpressionStatement", + "src": "3764:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes19", + "nameLocation": "3717:10:4", + "parameters": { + "id": 5338, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5337, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3736:2:4", + "nodeType": "VariableDeclaration", + "scope": 5349, + "src": "3728:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + }, + "typeName": { + "id": 5336, + "name": "bytes19", + "nodeType": "ElementaryTypeName", + "src": "3728:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + }, + "visibility": "internal" + } + ], + "src": "3727:12:4" + }, + "returnParameters": { + "id": 5339, + "nodeType": "ParameterList", + "parameters": [], + "src": "3754:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5363, + "nodeType": "FunctionDefinition", + "src": "3837:123:4", + "body": { + "id": 5362, + "nodeType": "Block", + "src": "3883:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323029", + "id": 5357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3933:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + "value": "log(bytes20)" + }, + { + "id": 5358, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5351, + "src": "3949:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "expression": { + "id": 5355, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3909:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3909:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3909:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5354, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "3893:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3893:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5361, + "nodeType": "ExpressionStatement", + "src": "3893:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes20", + "nameLocation": "3846:10:4", + "parameters": { + "id": 5352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5351, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3865:2:4", + "nodeType": "VariableDeclaration", + "scope": 5363, + "src": "3857:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 5350, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "3857:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "src": "3856:12:4" + }, + "returnParameters": { + "id": 5353, + "nodeType": "ParameterList", + "parameters": [], + "src": "3883:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5377, + "nodeType": "FunctionDefinition", + "src": "3966:123:4", + "body": { + "id": 5376, + "nodeType": "Block", + "src": "4012:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323129", + "id": 5371, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4062:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + "value": "log(bytes21)" + }, + { + "id": 5372, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5365, + "src": "4078:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + ], + "expression": { + "id": 5369, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4038:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5370, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4038:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4038:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5368, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4022:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4022:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5375, + "nodeType": "ExpressionStatement", + "src": "4022:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes21", + "nameLocation": "3975:10:4", + "parameters": { + "id": 5366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5365, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3994:2:4", + "nodeType": "VariableDeclaration", + "scope": 5377, + "src": "3986:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + }, + "typeName": { + "id": 5364, + "name": "bytes21", + "nodeType": "ElementaryTypeName", + "src": "3986:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + }, + "visibility": "internal" + } + ], + "src": "3985:12:4" + }, + "returnParameters": { + "id": 5367, + "nodeType": "ParameterList", + "parameters": [], + "src": "4012:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5391, + "nodeType": "FunctionDefinition", + "src": "4095:123:4", + "body": { + "id": 5390, + "nodeType": "Block", + "src": "4141:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323229", + "id": 5385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4191:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + "value": "log(bytes22)" + }, + { + "id": 5386, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5379, + "src": "4207:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + ], + "expression": { + "id": 5383, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4167:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4167:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4167:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5382, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4151:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4151:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5389, + "nodeType": "ExpressionStatement", + "src": "4151:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes22", + "nameLocation": "4104:10:4", + "parameters": { + "id": 5380, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5379, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4123:2:4", + "nodeType": "VariableDeclaration", + "scope": 5391, + "src": "4115:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + }, + "typeName": { + "id": 5378, + "name": "bytes22", + "nodeType": "ElementaryTypeName", + "src": "4115:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + }, + "visibility": "internal" + } + ], + "src": "4114:12:4" + }, + "returnParameters": { + "id": 5381, + "nodeType": "ParameterList", + "parameters": [], + "src": "4141:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5405, + "nodeType": "FunctionDefinition", + "src": "4224:123:4", + "body": { + "id": 5404, + "nodeType": "Block", + "src": "4270:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323329", + "id": 5399, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4320:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + "value": "log(bytes23)" + }, + { + "id": 5400, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5393, + "src": "4336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + ], + "expression": { + "id": 5397, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4296:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4296:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4296:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5396, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4280:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4280:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5403, + "nodeType": "ExpressionStatement", + "src": "4280:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes23", + "nameLocation": "4233:10:4", + "parameters": { + "id": 5394, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5393, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4252:2:4", + "nodeType": "VariableDeclaration", + "scope": 5405, + "src": "4244:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + }, + "typeName": { + "id": 5392, + "name": "bytes23", + "nodeType": "ElementaryTypeName", + "src": "4244:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + }, + "visibility": "internal" + } + ], + "src": "4243:12:4" + }, + "returnParameters": { + "id": 5395, + "nodeType": "ParameterList", + "parameters": [], + "src": "4270:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5419, + "nodeType": "FunctionDefinition", + "src": "4353:123:4", + "body": { + "id": 5418, + "nodeType": "Block", + "src": "4399:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323429", + "id": 5413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4449:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + "value": "log(bytes24)" + }, + { + "id": 5414, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5407, + "src": "4465:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + ], + "expression": { + "id": 5411, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4425:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4425:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4425:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5410, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4409:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4409:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5417, + "nodeType": "ExpressionStatement", + "src": "4409:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes24", + "nameLocation": "4362:10:4", + "parameters": { + "id": 5408, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5407, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4381:2:4", + "nodeType": "VariableDeclaration", + "scope": 5419, + "src": "4373:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + }, + "typeName": { + "id": 5406, + "name": "bytes24", + "nodeType": "ElementaryTypeName", + "src": "4373:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + }, + "visibility": "internal" + } + ], + "src": "4372:12:4" + }, + "returnParameters": { + "id": 5409, + "nodeType": "ParameterList", + "parameters": [], + "src": "4399:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5433, + "nodeType": "FunctionDefinition", + "src": "4482:123:4", + "body": { + "id": 5432, + "nodeType": "Block", + "src": "4528:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323529", + "id": 5427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4578:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + "value": "log(bytes25)" + }, + { + "id": 5428, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5421, + "src": "4594:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + ], + "expression": { + "id": 5425, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4554:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4554:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4554:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5424, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4538:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4538:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5431, + "nodeType": "ExpressionStatement", + "src": "4538:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes25", + "nameLocation": "4491:10:4", + "parameters": { + "id": 5422, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5421, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4510:2:4", + "nodeType": "VariableDeclaration", + "scope": 5433, + "src": "4502:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + }, + "typeName": { + "id": 5420, + "name": "bytes25", + "nodeType": "ElementaryTypeName", + "src": "4502:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + }, + "visibility": "internal" + } + ], + "src": "4501:12:4" + }, + "returnParameters": { + "id": 5423, + "nodeType": "ParameterList", + "parameters": [], + "src": "4528:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5447, + "nodeType": "FunctionDefinition", + "src": "4611:123:4", + "body": { + "id": 5446, + "nodeType": "Block", + "src": "4657:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323629", + "id": 5441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4707:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + "value": "log(bytes26)" + }, + { + "id": 5442, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5435, + "src": "4723:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + ], + "expression": { + "id": 5439, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4683:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4683:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4683:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5438, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4667:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4667:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5445, + "nodeType": "ExpressionStatement", + "src": "4667:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes26", + "nameLocation": "4620:10:4", + "parameters": { + "id": 5436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5435, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4639:2:4", + "nodeType": "VariableDeclaration", + "scope": 5447, + "src": "4631:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + }, + "typeName": { + "id": 5434, + "name": "bytes26", + "nodeType": "ElementaryTypeName", + "src": "4631:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + }, + "visibility": "internal" + } + ], + "src": "4630:12:4" + }, + "returnParameters": { + "id": 5437, + "nodeType": "ParameterList", + "parameters": [], + "src": "4657:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5461, + "nodeType": "FunctionDefinition", + "src": "4740:123:4", + "body": { + "id": 5460, + "nodeType": "Block", + "src": "4786:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323729", + "id": 5455, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4836:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + "value": "log(bytes27)" + }, + { + "id": 5456, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5449, + "src": "4852:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + ], + "expression": { + "id": 5453, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4812:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4812:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4812:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5452, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4796:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4796:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5459, + "nodeType": "ExpressionStatement", + "src": "4796:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes27", + "nameLocation": "4749:10:4", + "parameters": { + "id": 5450, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5449, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4768:2:4", + "nodeType": "VariableDeclaration", + "scope": 5461, + "src": "4760:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + }, + "typeName": { + "id": 5448, + "name": "bytes27", + "nodeType": "ElementaryTypeName", + "src": "4760:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + }, + "visibility": "internal" + } + ], + "src": "4759:12:4" + }, + "returnParameters": { + "id": 5451, + "nodeType": "ParameterList", + "parameters": [], + "src": "4786:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5475, + "nodeType": "FunctionDefinition", + "src": "4869:123:4", + "body": { + "id": 5474, + "nodeType": "Block", + "src": "4915:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323829", + "id": 5469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4965:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + "value": "log(bytes28)" + }, + { + "id": 5470, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5463, + "src": "4981:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + ], + "expression": { + "id": 5467, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4941:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5468, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4941:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4941:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5466, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "4925:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4925:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5473, + "nodeType": "ExpressionStatement", + "src": "4925:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes28", + "nameLocation": "4878:10:4", + "parameters": { + "id": 5464, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5463, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4897:2:4", + "nodeType": "VariableDeclaration", + "scope": 5475, + "src": "4889:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + }, + "typeName": { + "id": 5462, + "name": "bytes28", + "nodeType": "ElementaryTypeName", + "src": "4889:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + }, + "visibility": "internal" + } + ], + "src": "4888:12:4" + }, + "returnParameters": { + "id": 5465, + "nodeType": "ParameterList", + "parameters": [], + "src": "4915:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5489, + "nodeType": "FunctionDefinition", + "src": "4998:123:4", + "body": { + "id": 5488, + "nodeType": "Block", + "src": "5044:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323929", + "id": 5483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5094:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + "value": "log(bytes29)" + }, + { + "id": 5484, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5477, + "src": "5110:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + ], + "expression": { + "id": 5481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5070:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5070:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5485, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5070:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5480, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5054:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5054:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5487, + "nodeType": "ExpressionStatement", + "src": "5054:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes29", + "nameLocation": "5007:10:4", + "parameters": { + "id": 5478, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5477, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5026:2:4", + "nodeType": "VariableDeclaration", + "scope": 5489, + "src": "5018:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + }, + "typeName": { + "id": 5476, + "name": "bytes29", + "nodeType": "ElementaryTypeName", + "src": "5018:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + }, + "visibility": "internal" + } + ], + "src": "5017:12:4" + }, + "returnParameters": { + "id": 5479, + "nodeType": "ParameterList", + "parameters": [], + "src": "5044:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5503, + "nodeType": "FunctionDefinition", + "src": "5127:123:4", + "body": { + "id": 5502, + "nodeType": "Block", + "src": "5173:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333029", + "id": 5497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5223:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + "value": "log(bytes30)" + }, + { + "id": 5498, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5491, + "src": "5239:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + ], + "expression": { + "id": 5495, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5199:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5496, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5199:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5199:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5494, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5183:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5183:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5501, + "nodeType": "ExpressionStatement", + "src": "5183:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes30", + "nameLocation": "5136:10:4", + "parameters": { + "id": 5492, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5491, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5155:2:4", + "nodeType": "VariableDeclaration", + "scope": 5503, + "src": "5147:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + }, + "typeName": { + "id": 5490, + "name": "bytes30", + "nodeType": "ElementaryTypeName", + "src": "5147:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + }, + "visibility": "internal" + } + ], + "src": "5146:12:4" + }, + "returnParameters": { + "id": 5493, + "nodeType": "ParameterList", + "parameters": [], + "src": "5173:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5517, + "nodeType": "FunctionDefinition", + "src": "5256:123:4", + "body": { + "id": 5516, + "nodeType": "Block", + "src": "5302:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333129", + "id": 5511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5352:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + "value": "log(bytes31)" + }, + { + "id": 5512, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5505, + "src": "5368:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + ], + "expression": { + "id": 5509, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5328:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5328:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5328:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5508, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5312:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5514, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5312:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5515, + "nodeType": "ExpressionStatement", + "src": "5312:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes31", + "nameLocation": "5265:10:4", + "parameters": { + "id": 5506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5505, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5284:2:4", + "nodeType": "VariableDeclaration", + "scope": 5517, + "src": "5276:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + }, + "typeName": { + "id": 5504, + "name": "bytes31", + "nodeType": "ElementaryTypeName", + "src": "5276:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + }, + "visibility": "internal" + } + ], + "src": "5275:12:4" + }, + "returnParameters": { + "id": 5507, + "nodeType": "ParameterList", + "parameters": [], + "src": "5302:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5531, + "nodeType": "FunctionDefinition", + "src": "5385:123:4", + "body": { + "id": 5530, + "nodeType": "Block", + "src": "5431:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333229", + "id": 5525, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5481:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + "value": "log(bytes32)" + }, + { + "id": 5526, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5519, + "src": "5497:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 5523, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5457:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5524, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5457:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5457:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5522, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5441:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5441:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5529, + "nodeType": "ExpressionStatement", + "src": "5441:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes32", + "nameLocation": "5394:10:4", + "parameters": { + "id": 5520, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5519, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5413:2:4", + "nodeType": "VariableDeclaration", + "scope": 5531, + "src": "5405:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 5518, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5405:7:4", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5404:12:4" + }, + "returnParameters": { + "id": 5521, + "nodeType": "ParameterList", + "parameters": [], + "src": "5431:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5545, + "nodeType": "FunctionDefinition", + "src": "5514:110:4", + "body": { + "id": 5544, + "nodeType": "Block", + "src": "5550:74:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7429", + "id": 5539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5600:11:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f5b1bba92d8f98cf25e27c94d7fc7cbfbae95a49dfe5ab0cdf64ddd7181bb984", + "typeString": "literal_string \"log(uint)\"" + }, + "value": "log(uint)" + }, + { + "id": 5540, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5533, + "src": "5613:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f5b1bba92d8f98cf25e27c94d7fc7cbfbae95a49dfe5ab0cdf64ddd7181bb984", + "typeString": "literal_string \"log(uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5537, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5576:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5576:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5576:40:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5536, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5560:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5560:57:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5543, + "nodeType": "ExpressionStatement", + "src": "5560:57:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5523:3:4", + "parameters": { + "id": 5534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5533, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5532:2:4", + "nodeType": "VariableDeclaration", + "scope": 5545, + "src": "5527:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5532, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5527:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5526:9:4" + }, + "returnParameters": { + "id": 5535, + "nodeType": "ParameterList", + "parameters": [], + "src": "5550:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5559, + "nodeType": "FunctionDefinition", + "src": "5630:121:4", + "body": { + "id": 5558, + "nodeType": "Block", + "src": "5675:76:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 5553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5725:13:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 5554, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5547, + "src": "5740:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5551, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5701:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5701:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5701:42:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5550, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5685:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5685:59:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5557, + "nodeType": "ExpressionStatement", + "src": "5685:59:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5639:3:4", + "parameters": { + "id": 5548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5547, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5657:2:4", + "nodeType": "VariableDeclaration", + "scope": 5559, + "src": "5643:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5546, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5643:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5642:18:4" + }, + "returnParameters": { + "id": 5549, + "nodeType": "ParameterList", + "parameters": [], + "src": "5675:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5573, + "nodeType": "FunctionDefinition", + "src": "5757:110:4", + "body": { + "id": 5572, + "nodeType": "Block", + "src": "5793:74:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 5567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5843:11:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 5568, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5561, + "src": "5856:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5565, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5819:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5819:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5819:40:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5564, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5803:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5803:57:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5571, + "nodeType": "ExpressionStatement", + "src": "5803:57:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5766:3:4", + "parameters": { + "id": 5562, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5561, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5775:2:4", + "nodeType": "VariableDeclaration", + "scope": 5573, + "src": "5770:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5560, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "5770:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "5769:9:4" + }, + "returnParameters": { + "id": 5563, + "nodeType": "ParameterList", + "parameters": [], + "src": "5793:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5587, + "nodeType": "FunctionDefinition", + "src": "5873:116:4", + "body": { + "id": 5586, + "nodeType": "Block", + "src": "5912:77:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 5581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5962:14:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 5582, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5575, + "src": "5978:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5579, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5938:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5938:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5938:43:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5578, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "5922:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5922:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5585, + "nodeType": "ExpressionStatement", + "src": "5922:60:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5882:3:4", + "parameters": { + "id": 5576, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5575, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5894:2:4", + "nodeType": "VariableDeclaration", + "scope": 5587, + "src": "5886:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5574, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5886:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5885:12:4" + }, + "returnParameters": { + "id": 5577, + "nodeType": "ParameterList", + "parameters": [], + "src": "5912:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5604, + "nodeType": "FunctionDefinition", + "src": "5995:128:4", + "body": { + "id": 5603, + "nodeType": "Block", + "src": "6040:83:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e7429", + "id": 5597, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6090:16:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c0f69806b714804c91bc48c3b408dde7373841a86e55c9ea3ee0c5945b4bc32", + "typeString": "literal_string \"log(uint,uint)\"" + }, + "value": "log(uint,uint)" + }, + { + "id": 5598, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5589, + "src": "6108:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5599, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5591, + "src": "6112:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c0f69806b714804c91bc48c3b408dde7373841a86e55c9ea3ee0c5945b4bc32", + "typeString": "literal_string \"log(uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5595, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6066:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5596, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6066:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6066:49:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5594, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6050:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5601, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6050:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5602, + "nodeType": "ExpressionStatement", + "src": "6050:66:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6004:3:4", + "parameters": { + "id": 5592, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5589, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6013:2:4", + "nodeType": "VariableDeclaration", + "scope": 5604, + "src": "6008:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5588, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6008:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5591, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6022:2:4", + "nodeType": "VariableDeclaration", + "scope": 5604, + "src": "6017:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5590, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6017:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6007:18:4" + }, + "returnParameters": { + "id": 5593, + "nodeType": "ParameterList", + "parameters": [], + "src": "6040:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5621, + "nodeType": "FunctionDefinition", + "src": "6129:139:4", + "body": { + "id": 5620, + "nodeType": "Block", + "src": "6183:85:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e6729", + "id": 5614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6233:18:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0fa3f345ed69310615f27bede4ec80a963e2134dd287fa93c82b0c1eefe029a8", + "typeString": "literal_string \"log(uint,string)\"" + }, + "value": "log(uint,string)" + }, + { + "id": 5615, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5606, + "src": "6253:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5616, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5608, + "src": "6257:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0fa3f345ed69310615f27bede4ec80a963e2134dd287fa93c82b0c1eefe029a8", + "typeString": "literal_string \"log(uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5612, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6209:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5613, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6209:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6209:51:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5611, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6193:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6193:68:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5619, + "nodeType": "ExpressionStatement", + "src": "6193:68:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6138:3:4", + "parameters": { + "id": 5609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5606, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6147:2:4", + "nodeType": "VariableDeclaration", + "scope": 5621, + "src": "6142:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5605, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6142:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5608, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6165:2:4", + "nodeType": "VariableDeclaration", + "scope": 5621, + "src": "6151:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5607, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6151:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6141:27:4" + }, + "returnParameters": { + "id": 5610, + "nodeType": "ParameterList", + "parameters": [], + "src": "6183:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5638, + "nodeType": "FunctionDefinition", + "src": "6274:128:4", + "body": { + "id": 5637, + "nodeType": "Block", + "src": "6319:83:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c29", + "id": 5631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6369:16:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e6dd4ecaf57d2ec6eb02f2f993c53040200a16451fba718b7e8b170825fd172", + "typeString": "literal_string \"log(uint,bool)\"" + }, + "value": "log(uint,bool)" + }, + { + "id": 5632, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5623, + "src": "6387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5633, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5625, + "src": "6391:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1e6dd4ecaf57d2ec6eb02f2f993c53040200a16451fba718b7e8b170825fd172", + "typeString": "literal_string \"log(uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5629, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6345:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6345:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6345:49:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5628, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6329:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6329:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5636, + "nodeType": "ExpressionStatement", + "src": "6329:66:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6283:3:4", + "parameters": { + "id": 5626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5623, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6292:2:4", + "nodeType": "VariableDeclaration", + "scope": 5638, + "src": "6287:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5622, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6287:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5625, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6301:2:4", + "nodeType": "VariableDeclaration", + "scope": 5638, + "src": "6296:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6296:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6286:18:4" + }, + "returnParameters": { + "id": 5627, + "nodeType": "ParameterList", + "parameters": [], + "src": "6319:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5655, + "nodeType": "FunctionDefinition", + "src": "6408:134:4", + "body": { + "id": 5654, + "nodeType": "Block", + "src": "6456:86:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c6164647265737329", + "id": 5648, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6506:19:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_58eb860cb5df2c2db83667a7ce62ef14d1323e0f3e304ea316fb64cd2c6fd3b2", + "typeString": "literal_string \"log(uint,address)\"" + }, + "value": "log(uint,address)" + }, + { + "id": 5649, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5640, + "src": "6527:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5650, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5642, + "src": "6531:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_58eb860cb5df2c2db83667a7ce62ef14d1323e0f3e304ea316fb64cd2c6fd3b2", + "typeString": "literal_string \"log(uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5646, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6482:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6482:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6482:52:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5645, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6466:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6466:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5653, + "nodeType": "ExpressionStatement", + "src": "6466:69:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6417:3:4", + "parameters": { + "id": 5643, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5640, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6426:2:4", + "nodeType": "VariableDeclaration", + "scope": 5655, + "src": "6421:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5639, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6421:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5642, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6438:2:4", + "nodeType": "VariableDeclaration", + "scope": 5655, + "src": "6430:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5641, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6430:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6420:21:4" + }, + "returnParameters": { + "id": 5644, + "nodeType": "ParameterList", + "parameters": [], + "src": "6456:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5672, + "nodeType": "FunctionDefinition", + "src": "6548:139:4", + "body": { + "id": 5671, + "nodeType": "Block", + "src": "6602:85:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e7429", + "id": 5665, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6652:18:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9710a9d00d210736b1ce918b483e56000e2885769da8118b2fbf9fe33949d3bd", + "typeString": "literal_string \"log(string,uint)\"" + }, + "value": "log(string,uint)" + }, + { + "id": 5666, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5657, + "src": "6672:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5667, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5659, + "src": "6676:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9710a9d00d210736b1ce918b483e56000e2885769da8118b2fbf9fe33949d3bd", + "typeString": "literal_string \"log(string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5663, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6628:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5664, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6628:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6628:51:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5662, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6612:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6612:68:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5670, + "nodeType": "ExpressionStatement", + "src": "6612:68:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6557:3:4", + "parameters": { + "id": 5660, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5657, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6575:2:4", + "nodeType": "VariableDeclaration", + "scope": 5672, + "src": "6561:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5656, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6561:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5659, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6584:2:4", + "nodeType": "VariableDeclaration", + "scope": 5672, + "src": "6579:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5658, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6579:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6560:27:4" + }, + "returnParameters": { + "id": 5661, + "nodeType": "ParameterList", + "parameters": [], + "src": "6602:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5689, + "nodeType": "FunctionDefinition", + "src": "6693:150:4", + "body": { + "id": 5688, + "nodeType": "Block", + "src": "6756:87:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e6729", + "id": 5682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6806:20:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + "value": "log(string,string)" + }, + { + "id": 5683, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5674, + "src": "6828:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5684, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5676, + "src": "6832:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5680, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6782:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6782:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6782:53:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5679, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6766:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6766:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5687, + "nodeType": "ExpressionStatement", + "src": "6766:70:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6702:3:4", + "parameters": { + "id": 5677, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5674, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6720:2:4", + "nodeType": "VariableDeclaration", + "scope": 5689, + "src": "6706:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5673, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6706:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5676, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6738:2:4", + "nodeType": "VariableDeclaration", + "scope": 5689, + "src": "6724:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5675, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6724:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6705:36:4" + }, + "returnParameters": { + "id": 5678, + "nodeType": "ParameterList", + "parameters": [], + "src": "6756:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5706, + "nodeType": "FunctionDefinition", + "src": "6849:139:4", + "body": { + "id": 5705, + "nodeType": "Block", + "src": "6903:85:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c29", + "id": 5699, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6953:18:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + "value": "log(string,bool)" + }, + { + "id": 5700, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5691, + "src": "6973:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5701, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5693, + "src": "6977:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5697, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6929:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5698, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6929:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5702, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6929:51:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5696, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "6913:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6913:68:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5704, + "nodeType": "ExpressionStatement", + "src": "6913:68:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6858:3:4", + "parameters": { + "id": 5694, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5691, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6876:2:4", + "nodeType": "VariableDeclaration", + "scope": 5706, + "src": "6862:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5690, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6862:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5693, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6885:2:4", + "nodeType": "VariableDeclaration", + "scope": 5706, + "src": "6880:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5692, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6880:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6861:27:4" + }, + "returnParameters": { + "id": 5695, + "nodeType": "ParameterList", + "parameters": [], + "src": "6903:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5723, + "nodeType": "FunctionDefinition", + "src": "6994:145:4", + "body": { + "id": 5722, + "nodeType": "Block", + "src": "7051:88:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c6164647265737329", + "id": 5716, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7101:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + "value": "log(string,address)" + }, + { + "id": 5717, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5708, + "src": "7124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5718, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5710, + "src": "7128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5714, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7077:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5715, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7077:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7077:54:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5713, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7061:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7061:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5721, + "nodeType": "ExpressionStatement", + "src": "7061:71:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7003:3:4", + "parameters": { + "id": 5711, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5708, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7021:2:4", + "nodeType": "VariableDeclaration", + "scope": 5723, + "src": "7007:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5707, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7007:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5710, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7033:2:4", + "nodeType": "VariableDeclaration", + "scope": 5723, + "src": "7025:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5709, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7025:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7006:30:4" + }, + "returnParameters": { + "id": 5712, + "nodeType": "ParameterList", + "parameters": [], + "src": "7051:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5740, + "nodeType": "FunctionDefinition", + "src": "7145:128:4", + "body": { + "id": 5739, + "nodeType": "Block", + "src": "7190:83:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e7429", + "id": 5733, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7240:16:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_364b6a921e139cbe48176ce2b1f6700c7e568330bc5da26f60350cc33cf2a299", + "typeString": "literal_string \"log(bool,uint)\"" + }, + "value": "log(bool,uint)" + }, + { + "id": 5734, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5725, + "src": "7258:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 5735, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5727, + "src": "7262:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_364b6a921e139cbe48176ce2b1f6700c7e568330bc5da26f60350cc33cf2a299", + "typeString": "literal_string \"log(bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5731, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7216:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7216:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7216:49:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5730, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7200:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7200:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5738, + "nodeType": "ExpressionStatement", + "src": "7200:66:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7154:3:4", + "parameters": { + "id": 5728, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5725, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7163:2:4", + "nodeType": "VariableDeclaration", + "scope": 5740, + "src": "7158:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5724, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7158:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5727, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7172:2:4", + "nodeType": "VariableDeclaration", + "scope": 5740, + "src": "7167:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5726, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7167:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7157:18:4" + }, + "returnParameters": { + "id": 5729, + "nodeType": "ParameterList", + "parameters": [], + "src": "7190:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5757, + "nodeType": "FunctionDefinition", + "src": "7279:139:4", + "body": { + "id": 5756, + "nodeType": "Block", + "src": "7333:85:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e6729", + "id": 5750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7383:18:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + "value": "log(bool,string)" + }, + { + "id": 5751, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5742, + "src": "7403:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 5752, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5744, + "src": "7407:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5748, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7359:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5749, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7359:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7359:51:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5747, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7343:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7343:68:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5755, + "nodeType": "ExpressionStatement", + "src": "7343:68:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7288:3:4", + "parameters": { + "id": 5745, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5742, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7297:2:4", + "nodeType": "VariableDeclaration", + "scope": 5757, + "src": "7292:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5741, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7292:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5744, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7315:2:4", + "nodeType": "VariableDeclaration", + "scope": 5757, + "src": "7301:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5743, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7301:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7291:27:4" + }, + "returnParameters": { + "id": 5746, + "nodeType": "ParameterList", + "parameters": [], + "src": "7333:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5774, + "nodeType": "FunctionDefinition", + "src": "7424:128:4", + "body": { + "id": 5773, + "nodeType": "Block", + "src": "7469:83:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c29", + "id": 5767, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7519:16:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + "value": "log(bool,bool)" + }, + { + "id": 5768, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5759, + "src": "7537:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 5769, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5761, + "src": "7541:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5765, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7495:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5766, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7495:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7495:49:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5764, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7479:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7479:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5772, + "nodeType": "ExpressionStatement", + "src": "7479:66:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7433:3:4", + "parameters": { + "id": 5762, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5759, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7442:2:4", + "nodeType": "VariableDeclaration", + "scope": 5774, + "src": "7437:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5758, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7437:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5761, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7451:2:4", + "nodeType": "VariableDeclaration", + "scope": 5774, + "src": "7446:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5760, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7446:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7436:18:4" + }, + "returnParameters": { + "id": 5763, + "nodeType": "ParameterList", + "parameters": [], + "src": "7469:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5791, + "nodeType": "FunctionDefinition", + "src": "7558:134:4", + "body": { + "id": 5790, + "nodeType": "Block", + "src": "7606:86:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c6164647265737329", + "id": 5784, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7656:19:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + "value": "log(bool,address)" + }, + { + "id": 5785, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5776, + "src": "7677:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 5786, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5778, + "src": "7681:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5782, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7632:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7632:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7632:52:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5781, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7616:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7616:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5789, + "nodeType": "ExpressionStatement", + "src": "7616:69:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7567:3:4", + "parameters": { + "id": 5779, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5776, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7576:2:4", + "nodeType": "VariableDeclaration", + "scope": 5791, + "src": "7571:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5775, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7571:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5778, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7588:2:4", + "nodeType": "VariableDeclaration", + "scope": 5791, + "src": "7580:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5777, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7580:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7570:21:4" + }, + "returnParameters": { + "id": 5780, + "nodeType": "ParameterList", + "parameters": [], + "src": "7606:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5808, + "nodeType": "FunctionDefinition", + "src": "7698:134:4", + "body": { + "id": 5807, + "nodeType": "Block", + "src": "7746:86:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e7429", + "id": 5801, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7796:19:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2243cfa3a64f0f85afef83b08ba731ebd8a4b1053fdc66eb414b069452c9f133", + "typeString": "literal_string \"log(address,uint)\"" + }, + "value": "log(address,uint)" + }, + { + "id": 5802, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5793, + "src": "7817:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5803, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5795, + "src": "7821:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2243cfa3a64f0f85afef83b08ba731ebd8a4b1053fdc66eb414b069452c9f133", + "typeString": "literal_string \"log(address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5799, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7772:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7772:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7772:52:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5798, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7756:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5805, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7756:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5806, + "nodeType": "ExpressionStatement", + "src": "7756:69:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7707:3:4", + "parameters": { + "id": 5796, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5793, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7719:2:4", + "nodeType": "VariableDeclaration", + "scope": 5808, + "src": "7711:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5792, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7711:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5795, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7728:2:4", + "nodeType": "VariableDeclaration", + "scope": 5808, + "src": "7723:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5794, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7723:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7710:21:4" + }, + "returnParameters": { + "id": 5797, + "nodeType": "ParameterList", + "parameters": [], + "src": "7746:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5825, + "nodeType": "FunctionDefinition", + "src": "7838:145:4", + "body": { + "id": 5824, + "nodeType": "Block", + "src": "7895:88:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e6729", + "id": 5818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7945:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + "value": "log(address,string)" + }, + { + "id": 5819, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5810, + "src": "7968:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5820, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5812, + "src": "7972:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5816, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7921:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7921:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7921:54:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5815, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "7905:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7905:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5823, + "nodeType": "ExpressionStatement", + "src": "7905:71:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7847:3:4", + "parameters": { + "id": 5813, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5810, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7859:2:4", + "nodeType": "VariableDeclaration", + "scope": 5825, + "src": "7851:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5809, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7851:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5812, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7877:2:4", + "nodeType": "VariableDeclaration", + "scope": 5825, + "src": "7863:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5811, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7863:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7850:30:4" + }, + "returnParameters": { + "id": 5814, + "nodeType": "ParameterList", + "parameters": [], + "src": "7895:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5842, + "nodeType": "FunctionDefinition", + "src": "7989:134:4", + "body": { + "id": 5841, + "nodeType": "Block", + "src": "8037:86:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c29", + "id": 5835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8087:19:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + "value": "log(address,bool)" + }, + { + "id": 5836, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5827, + "src": "8108:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5837, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5829, + "src": "8112:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5833, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8063:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8063:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5838, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8063:52:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5832, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8047:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8047:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5840, + "nodeType": "ExpressionStatement", + "src": "8047:69:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7998:3:4", + "parameters": { + "id": 5830, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5827, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8010:2:4", + "nodeType": "VariableDeclaration", + "scope": 5842, + "src": "8002:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5826, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8002:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5829, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8019:2:4", + "nodeType": "VariableDeclaration", + "scope": 5842, + "src": "8014:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5828, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8014:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8001:21:4" + }, + "returnParameters": { + "id": 5831, + "nodeType": "ParameterList", + "parameters": [], + "src": "8037:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5859, + "nodeType": "FunctionDefinition", + "src": "8129:140:4", + "body": { + "id": 5858, + "nodeType": "Block", + "src": "8180:89:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c6164647265737329", + "id": 5852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8230:22:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + "value": "log(address,address)" + }, + { + "id": 5853, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5844, + "src": "8254:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 5854, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5846, + "src": "8258:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5850, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8206:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8206:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8206:55:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5849, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8190:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8190:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5857, + "nodeType": "ExpressionStatement", + "src": "8190:72:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8138:3:4", + "parameters": { + "id": 5847, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5844, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8150:2:4", + "nodeType": "VariableDeclaration", + "scope": 5859, + "src": "8142:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8142:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5846, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8162:2:4", + "nodeType": "VariableDeclaration", + "scope": 5859, + "src": "8154:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5845, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8154:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8141:24:4" + }, + "returnParameters": { + "id": 5848, + "nodeType": "ParameterList", + "parameters": [], + "src": "8180:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5879, + "nodeType": "FunctionDefinition", + "src": "8275:146:4", + "body": { + "id": 5878, + "nodeType": "Block", + "src": "8329:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c75696e7429", + "id": 5871, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8379:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e7820a7400e33a94b0ae6f00adee99b97ebef8b77c9e38dd555c2f6b541dee17", + "typeString": "literal_string \"log(uint,uint,uint)\"" + }, + "value": "log(uint,uint,uint)" + }, + { + "id": 5872, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5861, + "src": "8402:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5873, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5863, + "src": "8406:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5874, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5865, + "src": "8410:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e7820a7400e33a94b0ae6f00adee99b97ebef8b77c9e38dd555c2f6b541dee17", + "typeString": "literal_string \"log(uint,uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5869, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8355:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8355:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8355:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5868, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8339:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8339:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5877, + "nodeType": "ExpressionStatement", + "src": "8339:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8284:3:4", + "parameters": { + "id": 5866, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5861, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8293:2:4", + "nodeType": "VariableDeclaration", + "scope": 5879, + "src": "8288:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5860, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8288:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5863, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8302:2:4", + "nodeType": "VariableDeclaration", + "scope": 5879, + "src": "8297:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5862, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8297:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5865, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8311:2:4", + "nodeType": "VariableDeclaration", + "scope": 5879, + "src": "8306:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5864, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8306:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8287:27:4" + }, + "returnParameters": { + "id": 5867, + "nodeType": "ParameterList", + "parameters": [], + "src": "8329:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5899, + "nodeType": "FunctionDefinition", + "src": "8427:157:4", + "body": { + "id": 5898, + "nodeType": "Block", + "src": "8490:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c737472696e6729", + "id": 5891, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8540:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7d690ee617a4217569e96b85c815115b0eee15407adaa46490ed719a45458699", + "typeString": "literal_string \"log(uint,uint,string)\"" + }, + "value": "log(uint,uint,string)" + }, + { + "id": 5892, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5881, + "src": "8565:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5893, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5883, + "src": "8569:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5894, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5885, + "src": "8573:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7d690ee617a4217569e96b85c815115b0eee15407adaa46490ed719a45458699", + "typeString": "literal_string \"log(uint,uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5889, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8516:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8516:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8516:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5888, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8500:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8500:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5897, + "nodeType": "ExpressionStatement", + "src": "8500:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8436:3:4", + "parameters": { + "id": 5886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5881, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8445:2:4", + "nodeType": "VariableDeclaration", + "scope": 5899, + "src": "8440:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5880, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8440:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5883, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8454:2:4", + "nodeType": "VariableDeclaration", + "scope": 5899, + "src": "8449:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5882, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8449:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5885, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8472:2:4", + "nodeType": "VariableDeclaration", + "scope": 5899, + "src": "8458:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5884, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8458:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8439:36:4" + }, + "returnParameters": { + "id": 5887, + "nodeType": "ParameterList", + "parameters": [], + "src": "8490:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5919, + "nodeType": "FunctionDefinition", + "src": "8590:146:4", + "body": { + "id": 5918, + "nodeType": "Block", + "src": "8644:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c626f6f6c29", + "id": 5911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8694:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_67570ff704783f5d282b26317dc28aeb4fe23c085020ec6e580604c709916fa8", + "typeString": "literal_string \"log(uint,uint,bool)\"" + }, + "value": "log(uint,uint,bool)" + }, + { + "id": 5912, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5901, + "src": "8717:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5913, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5903, + "src": "8721:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5914, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5905, + "src": "8725:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_67570ff704783f5d282b26317dc28aeb4fe23c085020ec6e580604c709916fa8", + "typeString": "literal_string \"log(uint,uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5909, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8670:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8670:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8670:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5908, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8654:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8654:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5917, + "nodeType": "ExpressionStatement", + "src": "8654:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8599:3:4", + "parameters": { + "id": 5906, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5901, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8608:2:4", + "nodeType": "VariableDeclaration", + "scope": 5919, + "src": "8603:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5900, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8603:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5903, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8617:2:4", + "nodeType": "VariableDeclaration", + "scope": 5919, + "src": "8612:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5902, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8612:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5905, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8626:2:4", + "nodeType": "VariableDeclaration", + "scope": 5919, + "src": "8621:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5904, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8621:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8602:27:4" + }, + "returnParameters": { + "id": 5907, + "nodeType": "ParameterList", + "parameters": [], + "src": "8644:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5939, + "nodeType": "FunctionDefinition", + "src": "8742:152:4", + "body": { + "id": 5938, + "nodeType": "Block", + "src": "8799:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c6164647265737329", + "id": 5931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8849:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_be33491b8b53b7f3deae2959d1f4b0a22e6967a778c50f03dc188de84a207616", + "typeString": "literal_string \"log(uint,uint,address)\"" + }, + "value": "log(uint,uint,address)" + }, + { + "id": 5932, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5921, + "src": "8875:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5933, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5923, + "src": "8879:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5934, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5925, + "src": "8883:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_be33491b8b53b7f3deae2959d1f4b0a22e6967a778c50f03dc188de84a207616", + "typeString": "literal_string \"log(uint,uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 5929, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8825:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8825:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8825:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5928, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8809:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8809:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5937, + "nodeType": "ExpressionStatement", + "src": "8809:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8751:3:4", + "parameters": { + "id": 5926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5921, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8760:2:4", + "nodeType": "VariableDeclaration", + "scope": 5939, + "src": "8755:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5920, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8755:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5923, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8769:2:4", + "nodeType": "VariableDeclaration", + "scope": 5939, + "src": "8764:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5922, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8764:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5925, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8781:2:4", + "nodeType": "VariableDeclaration", + "scope": 5939, + "src": "8773:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 5924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8773:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8754:30:4" + }, + "returnParameters": { + "id": 5927, + "nodeType": "ParameterList", + "parameters": [], + "src": "8799:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5959, + "nodeType": "FunctionDefinition", + "src": "8900:157:4", + "body": { + "id": 5958, + "nodeType": "Block", + "src": "8963:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c75696e7429", + "id": 5951, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9013:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5b6de83ff0d95cd44df8bb8bfd95aa0a6291cab3b8502d85b1dcfd35a64c81cd", + "typeString": "literal_string \"log(uint,string,uint)\"" + }, + "value": "log(uint,string,uint)" + }, + { + "id": 5952, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5941, + "src": "9038:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5953, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5943, + "src": "9042:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5954, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5945, + "src": "9046:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5b6de83ff0d95cd44df8bb8bfd95aa0a6291cab3b8502d85b1dcfd35a64c81cd", + "typeString": "literal_string \"log(uint,string,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 5949, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8989:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5950, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8989:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8989:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5948, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "8973:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8973:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5957, + "nodeType": "ExpressionStatement", + "src": "8973:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8909:3:4", + "parameters": { + "id": 5946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5941, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8918:2:4", + "nodeType": "VariableDeclaration", + "scope": 5959, + "src": "8913:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5940, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8913:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5943, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8936:2:4", + "nodeType": "VariableDeclaration", + "scope": 5959, + "src": "8922:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8922:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5945, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8945:2:4", + "nodeType": "VariableDeclaration", + "scope": 5959, + "src": "8940:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5944, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8940:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8912:36:4" + }, + "returnParameters": { + "id": 5947, + "nodeType": "ParameterList", + "parameters": [], + "src": "8963:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5979, + "nodeType": "FunctionDefinition", + "src": "9063:168:4", + "body": { + "id": 5978, + "nodeType": "Block", + "src": "9135:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c737472696e6729", + "id": 5971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9185:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3f57c295245f8891b303347a08039155dde08dde601649242724a0ce876bcc65", + "typeString": "literal_string \"log(uint,string,string)\"" + }, + "value": "log(uint,string,string)" + }, + { + "id": 5972, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5961, + "src": "9212:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5973, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5963, + "src": "9216:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5974, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5965, + "src": "9220:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3f57c295245f8891b303347a08039155dde08dde601649242724a0ce876bcc65", + "typeString": "literal_string \"log(uint,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 5969, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9161:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9161:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9161:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5968, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9145:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9145:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5977, + "nodeType": "ExpressionStatement", + "src": "9145:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9072:3:4", + "parameters": { + "id": 5966, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5961, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9081:2:4", + "nodeType": "VariableDeclaration", + "scope": 5979, + "src": "9076:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5960, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9076:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5963, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9099:2:4", + "nodeType": "VariableDeclaration", + "scope": 5979, + "src": "9085:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5962, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9085:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5965, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9117:2:4", + "nodeType": "VariableDeclaration", + "scope": 5979, + "src": "9103:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5964, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9103:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9075:45:4" + }, + "returnParameters": { + "id": 5967, + "nodeType": "ParameterList", + "parameters": [], + "src": "9135:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 5999, + "nodeType": "FunctionDefinition", + "src": "9237:157:4", + "body": { + "id": 5998, + "nodeType": "Block", + "src": "9300:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c626f6f6c29", + "id": 5991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9350:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46a7d0ce13c2c26d158d9defa8ce488dbeb81d3c852592fb370bd45953199485", + "typeString": "literal_string \"log(uint,string,bool)\"" + }, + "value": "log(uint,string,bool)" + }, + { + "id": 5992, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5981, + "src": "9375:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 5993, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5983, + "src": "9379:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 5994, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5985, + "src": "9383:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46a7d0ce13c2c26d158d9defa8ce488dbeb81d3c852592fb370bd45953199485", + "typeString": "literal_string \"log(uint,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 5989, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9326:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 5990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9326:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 5995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9326:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 5988, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9310:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 5996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9310:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 5997, + "nodeType": "ExpressionStatement", + "src": "9310:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9246:3:4", + "parameters": { + "id": 5986, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 5981, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9255:2:4", + "nodeType": "VariableDeclaration", + "scope": 5999, + "src": "9250:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 5980, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9250:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5983, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9273:2:4", + "nodeType": "VariableDeclaration", + "scope": 5999, + "src": "9259:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 5982, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9259:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5985, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9282:2:4", + "nodeType": "VariableDeclaration", + "scope": 5999, + "src": "9277:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 5984, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9277:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9249:36:4" + }, + "returnParameters": { + "id": 5987, + "nodeType": "ParameterList", + "parameters": [], + "src": "9300:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6019, + "nodeType": "FunctionDefinition", + "src": "9400:163:4", + "body": { + "id": 6018, + "nodeType": "Block", + "src": "9466:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c6164647265737329", + "id": 6011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9516:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1f90f24a472e5198a9eef41600323c8a476ef0a1db1496125f7d053a74d474ac", + "typeString": "literal_string \"log(uint,string,address)\"" + }, + "value": "log(uint,string,address)" + }, + { + "id": 6012, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6001, + "src": "9544:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6013, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6003, + "src": "9548:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6014, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6005, + "src": "9552:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1f90f24a472e5198a9eef41600323c8a476ef0a1db1496125f7d053a74d474ac", + "typeString": "literal_string \"log(uint,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6009, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9492:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9492:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9492:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6008, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9476:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9476:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6017, + "nodeType": "ExpressionStatement", + "src": "9476:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9409:3:4", + "parameters": { + "id": 6006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6001, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9418:2:4", + "nodeType": "VariableDeclaration", + "scope": 6019, + "src": "9413:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6000, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9413:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6003, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9436:2:4", + "nodeType": "VariableDeclaration", + "scope": 6019, + "src": "9422:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6002, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9422:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6005, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9448:2:4", + "nodeType": "VariableDeclaration", + "scope": 6019, + "src": "9440:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6004, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9440:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9412:39:4" + }, + "returnParameters": { + "id": 6007, + "nodeType": "ParameterList", + "parameters": [], + "src": "9466:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6039, + "nodeType": "FunctionDefinition", + "src": "9569:146:4", + "body": { + "id": 6038, + "nodeType": "Block", + "src": "9623:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c75696e7429", + "id": 6031, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9673:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5a4d9922ab81f1126dafac21c1ce3fb483db2e4898341fe0758315eb5f3054d6", + "typeString": "literal_string \"log(uint,bool,uint)\"" + }, + "value": "log(uint,bool,uint)" + }, + { + "id": 6032, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6021, + "src": "9696:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6033, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6023, + "src": "9700:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6034, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6025, + "src": "9704:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5a4d9922ab81f1126dafac21c1ce3fb483db2e4898341fe0758315eb5f3054d6", + "typeString": "literal_string \"log(uint,bool,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6029, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9649:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6030, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9649:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9649:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6028, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9633:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6036, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9633:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6037, + "nodeType": "ExpressionStatement", + "src": "9633:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9578:3:4", + "parameters": { + "id": 6026, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6021, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9587:2:4", + "nodeType": "VariableDeclaration", + "scope": 6039, + "src": "9582:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6020, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9582:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6023, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9596:2:4", + "nodeType": "VariableDeclaration", + "scope": 6039, + "src": "9591:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6022, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9591:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6025, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9605:2:4", + "nodeType": "VariableDeclaration", + "scope": 6039, + "src": "9600:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6024, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9600:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9581:27:4" + }, + "returnParameters": { + "id": 6027, + "nodeType": "ParameterList", + "parameters": [], + "src": "9623:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6059, + "nodeType": "FunctionDefinition", + "src": "9721:157:4", + "body": { + "id": 6058, + "nodeType": "Block", + "src": "9784:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c737472696e6729", + "id": 6051, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9834:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8b0e14fe247223cbba6a19a2fac250db70b4f126d0f3f63ac9c3f080885b9f82", + "typeString": "literal_string \"log(uint,bool,string)\"" + }, + "value": "log(uint,bool,string)" + }, + { + "id": 6052, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6041, + "src": "9859:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6053, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6043, + "src": "9863:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6054, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6045, + "src": "9867:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8b0e14fe247223cbba6a19a2fac250db70b4f126d0f3f63ac9c3f080885b9f82", + "typeString": "literal_string \"log(uint,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6049, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9810:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9810:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9810:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6048, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9794:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9794:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6057, + "nodeType": "ExpressionStatement", + "src": "9794:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9730:3:4", + "parameters": { + "id": 6046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6041, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9739:2:4", + "nodeType": "VariableDeclaration", + "scope": 6059, + "src": "9734:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6040, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9734:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6043, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9748:2:4", + "nodeType": "VariableDeclaration", + "scope": 6059, + "src": "9743:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6042, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9743:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6045, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9766:2:4", + "nodeType": "VariableDeclaration", + "scope": 6059, + "src": "9752:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6044, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9752:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9733:36:4" + }, + "returnParameters": { + "id": 6047, + "nodeType": "ParameterList", + "parameters": [], + "src": "9784:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6079, + "nodeType": "FunctionDefinition", + "src": "9884:146:4", + "body": { + "id": 6078, + "nodeType": "Block", + "src": "9938:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c626f6f6c29", + "id": 6071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9988:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d5ceace024d24c243571d0b2393ca9fb37aa961a0e028332e72cd7dfb84c0971", + "typeString": "literal_string \"log(uint,bool,bool)\"" + }, + "value": "log(uint,bool,bool)" + }, + { + "id": 6072, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6061, + "src": "10011:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6073, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6063, + "src": "10015:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6074, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6065, + "src": "10019:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d5ceace024d24c243571d0b2393ca9fb37aa961a0e028332e72cd7dfb84c0971", + "typeString": "literal_string \"log(uint,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6069, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9964:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9964:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9964:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6068, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "9948:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9948:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6077, + "nodeType": "ExpressionStatement", + "src": "9948:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9893:3:4", + "parameters": { + "id": 6066, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6061, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9902:2:4", + "nodeType": "VariableDeclaration", + "scope": 6079, + "src": "9897:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6060, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9897:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6063, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9911:2:4", + "nodeType": "VariableDeclaration", + "scope": 6079, + "src": "9906:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6062, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9906:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6065, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9920:2:4", + "nodeType": "VariableDeclaration", + "scope": 6079, + "src": "9915:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6064, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9915:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9896:27:4" + }, + "returnParameters": { + "id": 6067, + "nodeType": "ParameterList", + "parameters": [], + "src": "9938:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6099, + "nodeType": "FunctionDefinition", + "src": "10036:152:4", + "body": { + "id": 6098, + "nodeType": "Block", + "src": "10093:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c6164647265737329", + "id": 6091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10143:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_424effbf6346b3a7c79debdbad20f804c7961e0193d509136d2bb7c09c7ff9b2", + "typeString": "literal_string \"log(uint,bool,address)\"" + }, + "value": "log(uint,bool,address)" + }, + { + "id": 6092, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6081, + "src": "10169:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6093, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6083, + "src": "10173:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6094, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6085, + "src": "10177:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_424effbf6346b3a7c79debdbad20f804c7961e0193d509136d2bb7c09c7ff9b2", + "typeString": "literal_string \"log(uint,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6089, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10119:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10119:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10119:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6088, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10103:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10103:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6097, + "nodeType": "ExpressionStatement", + "src": "10103:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10045:3:4", + "parameters": { + "id": 6086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6081, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10054:2:4", + "nodeType": "VariableDeclaration", + "scope": 6099, + "src": "10049:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6080, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10049:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6083, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10063:2:4", + "nodeType": "VariableDeclaration", + "scope": 6099, + "src": "10058:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6082, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10058:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6085, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10075:2:4", + "nodeType": "VariableDeclaration", + "scope": 6099, + "src": "10067:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10067:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10048:30:4" + }, + "returnParameters": { + "id": 6087, + "nodeType": "ParameterList", + "parameters": [], + "src": "10093:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6119, + "nodeType": "FunctionDefinition", + "src": "10194:152:4", + "body": { + "id": 6118, + "nodeType": "Block", + "src": "10251:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c75696e7429", + "id": 6111, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10301:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_884343aaf095a99f79852cd574543144a9a04148c5eb5687826e5e86a2554617", + "typeString": "literal_string \"log(uint,address,uint)\"" + }, + "value": "log(uint,address,uint)" + }, + { + "id": 6112, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6101, + "src": "10327:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6113, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6103, + "src": "10331:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6114, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6105, + "src": "10335:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_884343aaf095a99f79852cd574543144a9a04148c5eb5687826e5e86a2554617", + "typeString": "literal_string \"log(uint,address,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6109, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10277:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10277:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10277:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6108, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10261:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10261:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6117, + "nodeType": "ExpressionStatement", + "src": "10261:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10203:3:4", + "parameters": { + "id": 6106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6101, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10212:2:4", + "nodeType": "VariableDeclaration", + "scope": 6119, + "src": "10207:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6100, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10207:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6103, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10224:2:4", + "nodeType": "VariableDeclaration", + "scope": 6119, + "src": "10216:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10216:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6105, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10233:2:4", + "nodeType": "VariableDeclaration", + "scope": 6119, + "src": "10228:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6104, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10228:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10206:30:4" + }, + "returnParameters": { + "id": 6107, + "nodeType": "ParameterList", + "parameters": [], + "src": "10251:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6139, + "nodeType": "FunctionDefinition", + "src": "10352:163:4", + "body": { + "id": 6138, + "nodeType": "Block", + "src": "10418:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c737472696e6729", + "id": 6131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10468:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ce83047b6eeeca52b57db5064e316bb4dc615477077814d1a191d68a4818cbed", + "typeString": "literal_string \"log(uint,address,string)\"" + }, + "value": "log(uint,address,string)" + }, + { + "id": 6132, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6121, + "src": "10496:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6133, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6123, + "src": "10500:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6134, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6125, + "src": "10504:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ce83047b6eeeca52b57db5064e316bb4dc615477077814d1a191d68a4818cbed", + "typeString": "literal_string \"log(uint,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6129, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10444:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6130, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10444:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10444:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6128, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10428:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10428:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6137, + "nodeType": "ExpressionStatement", + "src": "10428:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10361:3:4", + "parameters": { + "id": 6126, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6121, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10370:2:4", + "nodeType": "VariableDeclaration", + "scope": 6139, + "src": "10365:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6120, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10365:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6123, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10382:2:4", + "nodeType": "VariableDeclaration", + "scope": 6139, + "src": "10374:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6122, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10374:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6125, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10400:2:4", + "nodeType": "VariableDeclaration", + "scope": 6139, + "src": "10386:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6124, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10386:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10364:39:4" + }, + "returnParameters": { + "id": 6127, + "nodeType": "ParameterList", + "parameters": [], + "src": "10418:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6159, + "nodeType": "FunctionDefinition", + "src": "10521:152:4", + "body": { + "id": 6158, + "nodeType": "Block", + "src": "10578:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c626f6f6c29", + "id": 6151, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10628:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7ad0128e41690364edd967a051c6d9cea9f7c322246c5ed2ebc0083265828a80", + "typeString": "literal_string \"log(uint,address,bool)\"" + }, + "value": "log(uint,address,bool)" + }, + { + "id": 6152, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6141, + "src": "10654:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6153, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6143, + "src": "10658:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6154, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6145, + "src": "10662:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7ad0128e41690364edd967a051c6d9cea9f7c322246c5ed2ebc0083265828a80", + "typeString": "literal_string \"log(uint,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6149, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10604:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10604:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10604:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6148, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10588:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10588:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6157, + "nodeType": "ExpressionStatement", + "src": "10588:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10530:3:4", + "parameters": { + "id": 6146, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6141, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10539:2:4", + "nodeType": "VariableDeclaration", + "scope": 6159, + "src": "10534:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6140, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10534:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6143, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10551:2:4", + "nodeType": "VariableDeclaration", + "scope": 6159, + "src": "10543:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10543:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6145, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10560:2:4", + "nodeType": "VariableDeclaration", + "scope": 6159, + "src": "10555:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6144, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10555:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10533:30:4" + }, + "returnParameters": { + "id": 6147, + "nodeType": "ParameterList", + "parameters": [], + "src": "10578:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6179, + "nodeType": "FunctionDefinition", + "src": "10679:158:4", + "body": { + "id": 6178, + "nodeType": "Block", + "src": "10739:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c6164647265737329", + "id": 6171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10789:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7d77a61be18c592527fe1ce89d591c1badea18ef3198dacc513c5ba08449fd7b", + "typeString": "literal_string \"log(uint,address,address)\"" + }, + "value": "log(uint,address,address)" + }, + { + "id": 6172, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6161, + "src": "10818:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6173, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6163, + "src": "10822:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6174, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6165, + "src": "10826:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7d77a61be18c592527fe1ce89d591c1badea18ef3198dacc513c5ba08449fd7b", + "typeString": "literal_string \"log(uint,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6169, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10765:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10765:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10765:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6168, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10749:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10749:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6177, + "nodeType": "ExpressionStatement", + "src": "10749:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10688:3:4", + "parameters": { + "id": 6166, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6161, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10697:2:4", + "nodeType": "VariableDeclaration", + "scope": 6179, + "src": "10692:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6160, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10692:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6163, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10709:2:4", + "nodeType": "VariableDeclaration", + "scope": 6179, + "src": "10701:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10701:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6165, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10721:2:4", + "nodeType": "VariableDeclaration", + "scope": 6179, + "src": "10713:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10713:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10691:33:4" + }, + "returnParameters": { + "id": 6167, + "nodeType": "ParameterList", + "parameters": [], + "src": "10739:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6199, + "nodeType": "FunctionDefinition", + "src": "10843:157:4", + "body": { + "id": 6198, + "nodeType": "Block", + "src": "10906:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c75696e7429", + "id": 6191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10956:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_969cdd03749f5aa30c7fce9178272cdca616cb2cc28128d3b9824be8046f827e", + "typeString": "literal_string \"log(string,uint,uint)\"" + }, + "value": "log(string,uint,uint)" + }, + { + "id": 6192, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6181, + "src": "10981:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6193, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6183, + "src": "10985:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6194, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6185, + "src": "10989:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_969cdd03749f5aa30c7fce9178272cdca616cb2cc28128d3b9824be8046f827e", + "typeString": "literal_string \"log(string,uint,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6189, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10932:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10932:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10932:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6188, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "10916:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10916:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6197, + "nodeType": "ExpressionStatement", + "src": "10916:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10852:3:4", + "parameters": { + "id": 6186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6181, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10870:2:4", + "nodeType": "VariableDeclaration", + "scope": 6199, + "src": "10856:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6180, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10856:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6183, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10879:2:4", + "nodeType": "VariableDeclaration", + "scope": 6199, + "src": "10874:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6182, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10874:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6185, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10888:2:4", + "nodeType": "VariableDeclaration", + "scope": 6199, + "src": "10883:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6184, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10883:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10855:36:4" + }, + "returnParameters": { + "id": 6187, + "nodeType": "ParameterList", + "parameters": [], + "src": "10906:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6219, + "nodeType": "FunctionDefinition", + "src": "11006:168:4", + "body": { + "id": 6218, + "nodeType": "Block", + "src": "11078:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c737472696e6729", + "id": 6211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11128:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a3f5c739d439f7a3912e960230088fb752539d00203d48771c643a12b26892ec", + "typeString": "literal_string \"log(string,uint,string)\"" + }, + "value": "log(string,uint,string)" + }, + { + "id": 6212, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6201, + "src": "11155:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6213, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6203, + "src": "11159:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6214, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6205, + "src": "11163:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a3f5c739d439f7a3912e960230088fb752539d00203d48771c643a12b26892ec", + "typeString": "literal_string \"log(string,uint,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11104:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11104:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6215, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11104:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6208, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11088:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6216, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11088:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6217, + "nodeType": "ExpressionStatement", + "src": "11088:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11015:3:4", + "parameters": { + "id": 6206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6201, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11033:2:4", + "nodeType": "VariableDeclaration", + "scope": 6219, + "src": "11019:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6200, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11019:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6203, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11042:2:4", + "nodeType": "VariableDeclaration", + "scope": 6219, + "src": "11037:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6202, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11037:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6205, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11060:2:4", + "nodeType": "VariableDeclaration", + "scope": 6219, + "src": "11046:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6204, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11046:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11018:45:4" + }, + "returnParameters": { + "id": 6207, + "nodeType": "ParameterList", + "parameters": [], + "src": "11078:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6239, + "nodeType": "FunctionDefinition", + "src": "11180:157:4", + "body": { + "id": 6238, + "nodeType": "Block", + "src": "11243:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c626f6f6c29", + "id": 6231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11293:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f102ee05f3b79d3bc2ba0350401e35479d9f95705fb40abfaeb49d12355695b3", + "typeString": "literal_string \"log(string,uint,bool)\"" + }, + "value": "log(string,uint,bool)" + }, + { + "id": 6232, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6221, + "src": "11318:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6233, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6223, + "src": "11322:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6234, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6225, + "src": "11326:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f102ee05f3b79d3bc2ba0350401e35479d9f95705fb40abfaeb49d12355695b3", + "typeString": "literal_string \"log(string,uint,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6229, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11269:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11269:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11269:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6228, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11253:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11253:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6237, + "nodeType": "ExpressionStatement", + "src": "11253:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11189:3:4", + "parameters": { + "id": 6226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6221, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11207:2:4", + "nodeType": "VariableDeclaration", + "scope": 6239, + "src": "11193:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6220, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11193:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6223, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11216:2:4", + "nodeType": "VariableDeclaration", + "scope": 6239, + "src": "11211:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6222, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11211:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6225, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11225:2:4", + "nodeType": "VariableDeclaration", + "scope": 6239, + "src": "11220:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6224, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11220:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11192:36:4" + }, + "returnParameters": { + "id": 6227, + "nodeType": "ParameterList", + "parameters": [], + "src": "11243:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6259, + "nodeType": "FunctionDefinition", + "src": "11343:163:4", + "body": { + "id": 6258, + "nodeType": "Block", + "src": "11409:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c6164647265737329", + "id": 6251, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11459:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e3849f79a3c07bea1bae0837bfeee5da2531684b262865f1541a60df4fcd512a", + "typeString": "literal_string \"log(string,uint,address)\"" + }, + "value": "log(string,uint,address)" + }, + { + "id": 6252, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6241, + "src": "11487:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6253, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6243, + "src": "11491:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6254, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6245, + "src": "11495:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e3849f79a3c07bea1bae0837bfeee5da2531684b262865f1541a60df4fcd512a", + "typeString": "literal_string \"log(string,uint,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6249, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11435:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6250, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11435:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11435:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6248, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11419:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11419:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6257, + "nodeType": "ExpressionStatement", + "src": "11419:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11352:3:4", + "parameters": { + "id": 6246, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6241, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11370:2:4", + "nodeType": "VariableDeclaration", + "scope": 6259, + "src": "11356:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6240, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11356:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6243, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11379:2:4", + "nodeType": "VariableDeclaration", + "scope": 6259, + "src": "11374:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11374:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6245, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11391:2:4", + "nodeType": "VariableDeclaration", + "scope": 6259, + "src": "11383:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6244, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11383:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11355:39:4" + }, + "returnParameters": { + "id": 6247, + "nodeType": "ParameterList", + "parameters": [], + "src": "11409:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6279, + "nodeType": "FunctionDefinition", + "src": "11512:168:4", + "body": { + "id": 6278, + "nodeType": "Block", + "src": "11584:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e7429", + "id": 6271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11634:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f362ca59af8dc58335601f00e8a4f3f8cd0c03c9716c1459118a41613b5e0147", + "typeString": "literal_string \"log(string,string,uint)\"" + }, + "value": "log(string,string,uint)" + }, + { + "id": 6272, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6261, + "src": "11661:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6273, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6263, + "src": "11665:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6274, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6265, + "src": "11669:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f362ca59af8dc58335601f00e8a4f3f8cd0c03c9716c1459118a41613b5e0147", + "typeString": "literal_string \"log(string,string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6269, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11610:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11610:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11610:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6268, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11594:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11594:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6277, + "nodeType": "ExpressionStatement", + "src": "11594:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11521:3:4", + "parameters": { + "id": 6266, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6261, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11539:2:4", + "nodeType": "VariableDeclaration", + "scope": 6279, + "src": "11525:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6260, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11525:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6263, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11557:2:4", + "nodeType": "VariableDeclaration", + "scope": 6279, + "src": "11543:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6262, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11543:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6265, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11566:2:4", + "nodeType": "VariableDeclaration", + "scope": 6279, + "src": "11561:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6264, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11561:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11524:45:4" + }, + "returnParameters": { + "id": 6267, + "nodeType": "ParameterList", + "parameters": [], + "src": "11584:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6299, + "nodeType": "FunctionDefinition", + "src": "11686:179:4", + "body": { + "id": 6298, + "nodeType": "Block", + "src": "11767:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e6729", + "id": 6291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11817:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + "value": "log(string,string,string)" + }, + { + "id": 6292, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6281, + "src": "11846:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6293, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6283, + "src": "11850:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6294, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6285, + "src": "11854:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6289, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11793:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6290, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11793:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6295, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11793:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6288, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11777:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11777:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6297, + "nodeType": "ExpressionStatement", + "src": "11777:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11695:3:4", + "parameters": { + "id": 6286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6281, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11713:2:4", + "nodeType": "VariableDeclaration", + "scope": 6299, + "src": "11699:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6280, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11699:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6283, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11731:2:4", + "nodeType": "VariableDeclaration", + "scope": 6299, + "src": "11717:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11717:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6285, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11749:2:4", + "nodeType": "VariableDeclaration", + "scope": 6299, + "src": "11735:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6284, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11735:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11698:54:4" + }, + "returnParameters": { + "id": 6287, + "nodeType": "ParameterList", + "parameters": [], + "src": "11767:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6319, + "nodeType": "FunctionDefinition", + "src": "11871:168:4", + "body": { + "id": 6318, + "nodeType": "Block", + "src": "11943:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c29", + "id": 6311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11993:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + "value": "log(string,string,bool)" + }, + { + "id": 6312, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6301, + "src": "12020:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6313, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6303, + "src": "12024:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6314, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6305, + "src": "12028:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6309, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11969:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11969:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11969:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6308, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "11953:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11953:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6317, + "nodeType": "ExpressionStatement", + "src": "11953:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11880:3:4", + "parameters": { + "id": 6306, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6301, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11898:2:4", + "nodeType": "VariableDeclaration", + "scope": 6319, + "src": "11884:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6300, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11884:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6303, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11916:2:4", + "nodeType": "VariableDeclaration", + "scope": 6319, + "src": "11902:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6302, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11902:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6305, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11925:2:4", + "nodeType": "VariableDeclaration", + "scope": 6319, + "src": "11920:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6304, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11920:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11883:45:4" + }, + "returnParameters": { + "id": 6307, + "nodeType": "ParameterList", + "parameters": [], + "src": "11943:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6339, + "nodeType": "FunctionDefinition", + "src": "12045:174:4", + "body": { + "id": 6338, + "nodeType": "Block", + "src": "12120:99:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c6164647265737329", + "id": 6331, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12170:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + "value": "log(string,string,address)" + }, + { + "id": 6332, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6321, + "src": "12200:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6333, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6323, + "src": "12204:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6334, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6325, + "src": "12208:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6329, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12146:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6330, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12146:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12146:65:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6328, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12130:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12130:82:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6337, + "nodeType": "ExpressionStatement", + "src": "12130:82:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12054:3:4", + "parameters": { + "id": 6326, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6321, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12072:2:4", + "nodeType": "VariableDeclaration", + "scope": 6339, + "src": "12058:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6320, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12058:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6323, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12090:2:4", + "nodeType": "VariableDeclaration", + "scope": 6339, + "src": "12076:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6322, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12076:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6325, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12102:2:4", + "nodeType": "VariableDeclaration", + "scope": 6339, + "src": "12094:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6324, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12094:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12057:48:4" + }, + "returnParameters": { + "id": 6327, + "nodeType": "ParameterList", + "parameters": [], + "src": "12120:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6359, + "nodeType": "FunctionDefinition", + "src": "12225:157:4", + "body": { + "id": 6358, + "nodeType": "Block", + "src": "12288:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e7429", + "id": 6351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12338:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_291bb9d00defdc1b95c66c8b4bc10ef714a549c4f22fb190fe687dc5e85a4db1", + "typeString": "literal_string \"log(string,bool,uint)\"" + }, + "value": "log(string,bool,uint)" + }, + { + "id": 6352, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6341, + "src": "12363:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6353, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6343, + "src": "12367:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6354, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6345, + "src": "12371:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_291bb9d00defdc1b95c66c8b4bc10ef714a549c4f22fb190fe687dc5e85a4db1", + "typeString": "literal_string \"log(string,bool,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6349, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12314:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12314:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12314:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6348, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12298:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12298:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6357, + "nodeType": "ExpressionStatement", + "src": "12298:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12234:3:4", + "parameters": { + "id": 6346, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6341, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12252:2:4", + "nodeType": "VariableDeclaration", + "scope": 6359, + "src": "12238:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6340, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12238:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6343, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12261:2:4", + "nodeType": "VariableDeclaration", + "scope": 6359, + "src": "12256:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6342, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12256:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6345, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12270:2:4", + "nodeType": "VariableDeclaration", + "scope": 6359, + "src": "12265:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6344, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12265:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12237:36:4" + }, + "returnParameters": { + "id": 6347, + "nodeType": "ParameterList", + "parameters": [], + "src": "12288:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6379, + "nodeType": "FunctionDefinition", + "src": "12388:168:4", + "body": { + "id": 6378, + "nodeType": "Block", + "src": "12460:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e6729", + "id": 6371, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12510:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + "value": "log(string,bool,string)" + }, + { + "id": 6372, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6361, + "src": "12537:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6373, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6363, + "src": "12541:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6374, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6365, + "src": "12545:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6369, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12486:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6370, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12486:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12486:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6368, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12470:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12470:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6377, + "nodeType": "ExpressionStatement", + "src": "12470:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12397:3:4", + "parameters": { + "id": 6366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6361, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12415:2:4", + "nodeType": "VariableDeclaration", + "scope": 6379, + "src": "12401:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6360, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12401:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6363, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12424:2:4", + "nodeType": "VariableDeclaration", + "scope": 6379, + "src": "12419:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6362, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12419:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6365, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12442:2:4", + "nodeType": "VariableDeclaration", + "scope": 6379, + "src": "12428:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6364, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12428:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12400:45:4" + }, + "returnParameters": { + "id": 6367, + "nodeType": "ParameterList", + "parameters": [], + "src": "12460:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6399, + "nodeType": "FunctionDefinition", + "src": "12562:157:4", + "body": { + "id": 6398, + "nodeType": "Block", + "src": "12625:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c29", + "id": 6391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12675:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + "value": "log(string,bool,bool)" + }, + { + "id": 6392, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6381, + "src": "12700:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6393, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6383, + "src": "12704:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6394, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6385, + "src": "12708:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6389, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12651:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6390, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12651:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12651:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6388, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12635:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12635:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6397, + "nodeType": "ExpressionStatement", + "src": "12635:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12571:3:4", + "parameters": { + "id": 6386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6381, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12589:2:4", + "nodeType": "VariableDeclaration", + "scope": 6399, + "src": "12575:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6380, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12575:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6383, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12598:2:4", + "nodeType": "VariableDeclaration", + "scope": 6399, + "src": "12593:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6382, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12593:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6385, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12607:2:4", + "nodeType": "VariableDeclaration", + "scope": 6399, + "src": "12602:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6384, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12602:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12574:36:4" + }, + "returnParameters": { + "id": 6387, + "nodeType": "ParameterList", + "parameters": [], + "src": "12625:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6419, + "nodeType": "FunctionDefinition", + "src": "12725:163:4", + "body": { + "id": 6418, + "nodeType": "Block", + "src": "12791:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c6164647265737329", + "id": 6411, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12841:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + "value": "log(string,bool,address)" + }, + { + "id": 6412, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6401, + "src": "12869:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6413, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6403, + "src": "12873:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6414, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6405, + "src": "12877:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6409, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12817:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6410, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12817:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12817:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6408, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12801:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6416, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12801:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6417, + "nodeType": "ExpressionStatement", + "src": "12801:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12734:3:4", + "parameters": { + "id": 6406, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6401, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12752:2:4", + "nodeType": "VariableDeclaration", + "scope": 6419, + "src": "12738:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6400, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12738:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6403, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12761:2:4", + "nodeType": "VariableDeclaration", + "scope": 6419, + "src": "12756:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6402, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12756:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6405, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12773:2:4", + "nodeType": "VariableDeclaration", + "scope": 6419, + "src": "12765:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6404, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12765:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12737:39:4" + }, + "returnParameters": { + "id": 6407, + "nodeType": "ParameterList", + "parameters": [], + "src": "12791:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6439, + "nodeType": "FunctionDefinition", + "src": "12894:163:4", + "body": { + "id": 6438, + "nodeType": "Block", + "src": "12960:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e7429", + "id": 6431, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13010:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_07c81217b9c48682941345dce61bbd916a12dd883642c9077891090a71c93a13", + "typeString": "literal_string \"log(string,address,uint)\"" + }, + "value": "log(string,address,uint)" + }, + { + "id": 6432, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6421, + "src": "13038:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6433, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6423, + "src": "13042:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6434, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6425, + "src": "13046:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_07c81217b9c48682941345dce61bbd916a12dd883642c9077891090a71c93a13", + "typeString": "literal_string \"log(string,address,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6429, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12986:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12986:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12986:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6428, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "12970:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12970:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6437, + "nodeType": "ExpressionStatement", + "src": "12970:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12903:3:4", + "parameters": { + "id": 6426, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6421, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12921:2:4", + "nodeType": "VariableDeclaration", + "scope": 6439, + "src": "12907:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6420, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12907:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6423, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12933:2:4", + "nodeType": "VariableDeclaration", + "scope": 6439, + "src": "12925:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6422, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12925:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6425, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12942:2:4", + "nodeType": "VariableDeclaration", + "scope": 6439, + "src": "12937:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6424, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12937:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12906:39:4" + }, + "returnParameters": { + "id": 6427, + "nodeType": "ParameterList", + "parameters": [], + "src": "12960:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6459, + "nodeType": "FunctionDefinition", + "src": "13063:174:4", + "body": { + "id": 6458, + "nodeType": "Block", + "src": "13138:99:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e6729", + "id": 6451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13188:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + "value": "log(string,address,string)" + }, + { + "id": 6452, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6441, + "src": "13218:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6453, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6443, + "src": "13222:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6454, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6445, + "src": "13226:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6449, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13164:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13164:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13164:65:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6448, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13148:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13148:82:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6457, + "nodeType": "ExpressionStatement", + "src": "13148:82:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13072:3:4", + "parameters": { + "id": 6446, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6441, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13090:2:4", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "13076:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6440, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13076:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6443, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13102:2:4", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "13094:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6442, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13094:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6445, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13120:2:4", + "nodeType": "VariableDeclaration", + "scope": 6459, + "src": "13106:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6444, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13106:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13075:48:4" + }, + "returnParameters": { + "id": 6447, + "nodeType": "ParameterList", + "parameters": [], + "src": "13138:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6479, + "nodeType": "FunctionDefinition", + "src": "13243:163:4", + "body": { + "id": 6478, + "nodeType": "Block", + "src": "13309:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c29", + "id": 6471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13359:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + "value": "log(string,address,bool)" + }, + { + "id": 6472, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6461, + "src": "13387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6473, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6463, + "src": "13391:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6474, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6465, + "src": "13395:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6469, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13335:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13335:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13335:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6468, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13319:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13319:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6477, + "nodeType": "ExpressionStatement", + "src": "13319:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13252:3:4", + "parameters": { + "id": 6466, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6461, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13270:2:4", + "nodeType": "VariableDeclaration", + "scope": 6479, + "src": "13256:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6460, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13256:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6463, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13282:2:4", + "nodeType": "VariableDeclaration", + "scope": 6479, + "src": "13274:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6462, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13274:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6465, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13291:2:4", + "nodeType": "VariableDeclaration", + "scope": 6479, + "src": "13286:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13286:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13255:39:4" + }, + "returnParameters": { + "id": 6467, + "nodeType": "ParameterList", + "parameters": [], + "src": "13309:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6499, + "nodeType": "FunctionDefinition", + "src": "13412:169:4", + "body": { + "id": 6498, + "nodeType": "Block", + "src": "13481:100:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c6164647265737329", + "id": 6491, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13531:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + "value": "log(string,address,address)" + }, + { + "id": 6492, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6481, + "src": "13562:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6493, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6483, + "src": "13566:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6494, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6485, + "src": "13570:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6489, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13507:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6490, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13507:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13507:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6488, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13491:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13491:83:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6497, + "nodeType": "ExpressionStatement", + "src": "13491:83:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13421:3:4", + "parameters": { + "id": 6486, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6481, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13439:2:4", + "nodeType": "VariableDeclaration", + "scope": 6499, + "src": "13425:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6480, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13425:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6483, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13451:2:4", + "nodeType": "VariableDeclaration", + "scope": 6499, + "src": "13443:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6482, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13443:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6485, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13463:2:4", + "nodeType": "VariableDeclaration", + "scope": 6499, + "src": "13455:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6484, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13455:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13424:42:4" + }, + "returnParameters": { + "id": 6487, + "nodeType": "ParameterList", + "parameters": [], + "src": "13481:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6519, + "nodeType": "FunctionDefinition", + "src": "13587:146:4", + "body": { + "id": 6518, + "nodeType": "Block", + "src": "13641:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c75696e7429", + "id": 6511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13691:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b5c03e061c862e366b964ce1ef4845511d610b73a90137eb2b2afa3099b1a4e", + "typeString": "literal_string \"log(bool,uint,uint)\"" + }, + "value": "log(bool,uint,uint)" + }, + { + "id": 6512, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6501, + "src": "13714:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6513, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6503, + "src": "13718:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6514, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6505, + "src": "13722:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b5c03e061c862e366b964ce1ef4845511d610b73a90137eb2b2afa3099b1a4e", + "typeString": "literal_string \"log(bool,uint,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6509, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13667:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13667:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13667:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6508, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13651:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13651:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6517, + "nodeType": "ExpressionStatement", + "src": "13651:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13596:3:4", + "parameters": { + "id": 6506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6501, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13605:2:4", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "13600:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6500, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13600:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6503, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13614:2:4", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "13609:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6502, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13609:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6505, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13623:2:4", + "nodeType": "VariableDeclaration", + "scope": 6519, + "src": "13618:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6504, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13618:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13599:27:4" + }, + "returnParameters": { + "id": 6507, + "nodeType": "ParameterList", + "parameters": [], + "src": "13641:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6539, + "nodeType": "FunctionDefinition", + "src": "13739:157:4", + "body": { + "id": 6538, + "nodeType": "Block", + "src": "13802:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c737472696e6729", + "id": 6531, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13852:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c8397eb0de34bc3ec2853d625c1649c0c0abb20941c30ba650cc738adade018f", + "typeString": "literal_string \"log(bool,uint,string)\"" + }, + "value": "log(bool,uint,string)" + }, + { + "id": 6532, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6521, + "src": "13877:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6533, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6523, + "src": "13881:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6534, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6525, + "src": "13885:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c8397eb0de34bc3ec2853d625c1649c0c0abb20941c30ba650cc738adade018f", + "typeString": "literal_string \"log(bool,uint,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6529, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13828:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13828:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13828:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6528, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13812:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13812:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6537, + "nodeType": "ExpressionStatement", + "src": "13812:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13748:3:4", + "parameters": { + "id": 6526, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6521, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13757:2:4", + "nodeType": "VariableDeclaration", + "scope": 6539, + "src": "13752:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6520, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13752:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6523, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13766:2:4", + "nodeType": "VariableDeclaration", + "scope": 6539, + "src": "13761:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6522, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13761:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6525, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13784:2:4", + "nodeType": "VariableDeclaration", + "scope": 6539, + "src": "13770:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6524, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13770:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13751:36:4" + }, + "returnParameters": { + "id": 6527, + "nodeType": "ParameterList", + "parameters": [], + "src": "13802:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6559, + "nodeType": "FunctionDefinition", + "src": "13902:146:4", + "body": { + "id": 6558, + "nodeType": "Block", + "src": "13956:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c626f6f6c29", + "id": 6551, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14006:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1badc9eb6813ec769c33a3918f278565b7e2e9ed34d2ae2d50d951cc0f602ae0", + "typeString": "literal_string \"log(bool,uint,bool)\"" + }, + "value": "log(bool,uint,bool)" + }, + { + "id": 6552, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6541, + "src": "14029:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6553, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6543, + "src": "14033:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6554, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6545, + "src": "14037:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1badc9eb6813ec769c33a3918f278565b7e2e9ed34d2ae2d50d951cc0f602ae0", + "typeString": "literal_string \"log(bool,uint,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6549, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13982:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6550, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13982:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13982:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6548, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "13966:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13966:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6557, + "nodeType": "ExpressionStatement", + "src": "13966:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13911:3:4", + "parameters": { + "id": 6546, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6541, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13920:2:4", + "nodeType": "VariableDeclaration", + "scope": 6559, + "src": "13915:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6540, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13915:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6543, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13929:2:4", + "nodeType": "VariableDeclaration", + "scope": 6559, + "src": "13924:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6542, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13924:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6545, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13938:2:4", + "nodeType": "VariableDeclaration", + "scope": 6559, + "src": "13933:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6544, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13933:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13914:27:4" + }, + "returnParameters": { + "id": 6547, + "nodeType": "ParameterList", + "parameters": [], + "src": "13956:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6579, + "nodeType": "FunctionDefinition", + "src": "14054:152:4", + "body": { + "id": 6578, + "nodeType": "Block", + "src": "14111:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c6164647265737329", + "id": 6571, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14161:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4d23507f52009aec241457bf26dc51305bd2896aa08c5b47f04709554b39440", + "typeString": "literal_string \"log(bool,uint,address)\"" + }, + "value": "log(bool,uint,address)" + }, + { + "id": 6572, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6561, + "src": "14187:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6573, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6563, + "src": "14191:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6574, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6565, + "src": "14195:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4d23507f52009aec241457bf26dc51305bd2896aa08c5b47f04709554b39440", + "typeString": "literal_string \"log(bool,uint,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6569, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14137:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6570, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14137:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14137:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6568, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14121:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14121:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6577, + "nodeType": "ExpressionStatement", + "src": "14121:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14063:3:4", + "parameters": { + "id": 6566, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6561, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14072:2:4", + "nodeType": "VariableDeclaration", + "scope": 6579, + "src": "14067:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6560, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14067:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6563, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14081:2:4", + "nodeType": "VariableDeclaration", + "scope": 6579, + "src": "14076:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6562, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14076:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6565, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14093:2:4", + "nodeType": "VariableDeclaration", + "scope": 6579, + "src": "14085:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6564, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14085:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14066:30:4" + }, + "returnParameters": { + "id": 6567, + "nodeType": "ParameterList", + "parameters": [], + "src": "14111:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6599, + "nodeType": "FunctionDefinition", + "src": "14212:157:4", + "body": { + "id": 6598, + "nodeType": "Block", + "src": "14275:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e7429", + "id": 6591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14325:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c0382aac3e9b237c9c8f246cdb8152d44351aaafa72d99e3640be65f754ac807", + "typeString": "literal_string \"log(bool,string,uint)\"" + }, + "value": "log(bool,string,uint)" + }, + { + "id": 6592, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6581, + "src": "14350:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6593, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6583, + "src": "14354:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6594, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6585, + "src": "14358:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c0382aac3e9b237c9c8f246cdb8152d44351aaafa72d99e3640be65f754ac807", + "typeString": "literal_string \"log(bool,string,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6589, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14301:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14301:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14301:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6588, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14285:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14285:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6597, + "nodeType": "ExpressionStatement", + "src": "14285:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14221:3:4", + "parameters": { + "id": 6586, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6581, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14230:2:4", + "nodeType": "VariableDeclaration", + "scope": 6599, + "src": "14225:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6580, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14225:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6583, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14248:2:4", + "nodeType": "VariableDeclaration", + "scope": 6599, + "src": "14234:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6582, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14234:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6585, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14257:2:4", + "nodeType": "VariableDeclaration", + "scope": 6599, + "src": "14252:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6584, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14252:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14224:36:4" + }, + "returnParameters": { + "id": 6587, + "nodeType": "ParameterList", + "parameters": [], + "src": "14275:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6619, + "nodeType": "FunctionDefinition", + "src": "14375:168:4", + "body": { + "id": 6618, + "nodeType": "Block", + "src": "14447:96:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e6729", + "id": 6611, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14497:25:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + "value": "log(bool,string,string)" + }, + { + "id": 6612, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6601, + "src": "14524:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6613, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6603, + "src": "14528:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6614, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6605, + "src": "14532:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14473:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14473:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14473:62:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6608, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14457:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14457:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6617, + "nodeType": "ExpressionStatement", + "src": "14457:79:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14384:3:4", + "parameters": { + "id": 6606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6601, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14393:2:4", + "nodeType": "VariableDeclaration", + "scope": 6619, + "src": "14388:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6600, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14388:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6603, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14411:2:4", + "nodeType": "VariableDeclaration", + "scope": 6619, + "src": "14397:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6602, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14397:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6605, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14429:2:4", + "nodeType": "VariableDeclaration", + "scope": 6619, + "src": "14415:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6604, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14415:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "14387:45:4" + }, + "returnParameters": { + "id": 6607, + "nodeType": "ParameterList", + "parameters": [], + "src": "14447:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6639, + "nodeType": "FunctionDefinition", + "src": "14549:157:4", + "body": { + "id": 6638, + "nodeType": "Block", + "src": "14612:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c29", + "id": 6631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14662:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + "value": "log(bool,string,bool)" + }, + { + "id": 6632, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6621, + "src": "14687:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6633, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6623, + "src": "14691:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6634, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6625, + "src": "14695:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6629, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14638:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14638:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14638:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6628, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14622:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14622:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6637, + "nodeType": "ExpressionStatement", + "src": "14622:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14558:3:4", + "parameters": { + "id": 6626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6621, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14567:2:4", + "nodeType": "VariableDeclaration", + "scope": 6639, + "src": "14562:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6620, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14562:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6623, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14585:2:4", + "nodeType": "VariableDeclaration", + "scope": 6639, + "src": "14571:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6622, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14571:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6625, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14594:2:4", + "nodeType": "VariableDeclaration", + "scope": 6639, + "src": "14589:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14589:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "14561:36:4" + }, + "returnParameters": { + "id": 6627, + "nodeType": "ParameterList", + "parameters": [], + "src": "14612:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6659, + "nodeType": "FunctionDefinition", + "src": "14712:163:4", + "body": { + "id": 6658, + "nodeType": "Block", + "src": "14778:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c6164647265737329", + "id": 6651, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14828:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + "value": "log(bool,string,address)" + }, + { + "id": 6652, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6641, + "src": "14856:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6653, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6643, + "src": "14860:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6654, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6645, + "src": "14864:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6649, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14804:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14804:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14804:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6648, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14788:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14788:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6657, + "nodeType": "ExpressionStatement", + "src": "14788:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14721:3:4", + "parameters": { + "id": 6646, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6641, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14730:2:4", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "14725:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6640, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14725:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6643, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14748:2:4", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "14734:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6642, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14734:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6645, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14760:2:4", + "nodeType": "VariableDeclaration", + "scope": 6659, + "src": "14752:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6644, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14752:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14724:39:4" + }, + "returnParameters": { + "id": 6647, + "nodeType": "ParameterList", + "parameters": [], + "src": "14778:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6679, + "nodeType": "FunctionDefinition", + "src": "14881:146:4", + "body": { + "id": 6678, + "nodeType": "Block", + "src": "14935:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e7429", + "id": 6671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14985:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b01365bbae43503e22260bcc9cf23ffef37ffc9f6c1580737fe2489955065877", + "typeString": "literal_string \"log(bool,bool,uint)\"" + }, + "value": "log(bool,bool,uint)" + }, + { + "id": 6672, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6661, + "src": "15008:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6673, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6663, + "src": "15012:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6674, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6665, + "src": "15016:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b01365bbae43503e22260bcc9cf23ffef37ffc9f6c1580737fe2489955065877", + "typeString": "literal_string \"log(bool,bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6669, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14961:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6670, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14961:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14961:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6668, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "14945:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14945:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6677, + "nodeType": "ExpressionStatement", + "src": "14945:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14890:3:4", + "parameters": { + "id": 6666, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6661, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14899:2:4", + "nodeType": "VariableDeclaration", + "scope": 6679, + "src": "14894:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6660, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14894:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6663, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14908:2:4", + "nodeType": "VariableDeclaration", + "scope": 6679, + "src": "14903:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6662, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14903:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6665, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14917:2:4", + "nodeType": "VariableDeclaration", + "scope": 6679, + "src": "14912:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6664, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14912:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14893:27:4" + }, + "returnParameters": { + "id": 6667, + "nodeType": "ParameterList", + "parameters": [], + "src": "14935:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6699, + "nodeType": "FunctionDefinition", + "src": "15033:157:4", + "body": { + "id": 6698, + "nodeType": "Block", + "src": "15096:94:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e6729", + "id": 6691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15146:23:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + "value": "log(bool,bool,string)" + }, + { + "id": 6692, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6681, + "src": "15171:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6693, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6683, + "src": "15175:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6694, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6685, + "src": "15179:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6689, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15122:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15122:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15122:60:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6688, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15106:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15106:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6697, + "nodeType": "ExpressionStatement", + "src": "15106:77:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15042:3:4", + "parameters": { + "id": 6686, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6681, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15051:2:4", + "nodeType": "VariableDeclaration", + "scope": 6699, + "src": "15046:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6680, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15046:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6683, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15060:2:4", + "nodeType": "VariableDeclaration", + "scope": 6699, + "src": "15055:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6682, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15055:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6685, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15078:2:4", + "nodeType": "VariableDeclaration", + "scope": 6699, + "src": "15064:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6684, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15064:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15045:36:4" + }, + "returnParameters": { + "id": 6687, + "nodeType": "ParameterList", + "parameters": [], + "src": "15096:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6719, + "nodeType": "FunctionDefinition", + "src": "15196:146:4", + "body": { + "id": 6718, + "nodeType": "Block", + "src": "15250:92:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c29", + "id": 6711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15300:21:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool)" + }, + { + "id": 6712, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6701, + "src": "15323:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6713, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6703, + "src": "15327:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6714, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6705, + "src": "15331:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6709, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15276:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6710, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15276:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15276:58:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6708, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15260:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15260:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6717, + "nodeType": "ExpressionStatement", + "src": "15260:75:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15205:3:4", + "parameters": { + "id": 6706, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6701, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15214:2:4", + "nodeType": "VariableDeclaration", + "scope": 6719, + "src": "15209:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6700, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15209:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6703, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15223:2:4", + "nodeType": "VariableDeclaration", + "scope": 6719, + "src": "15218:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6702, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15218:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6705, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15232:2:4", + "nodeType": "VariableDeclaration", + "scope": 6719, + "src": "15227:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6704, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15227:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15208:27:4" + }, + "returnParameters": { + "id": 6707, + "nodeType": "ParameterList", + "parameters": [], + "src": "15250:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6739, + "nodeType": "FunctionDefinition", + "src": "15348:152:4", + "body": { + "id": 6738, + "nodeType": "Block", + "src": "15405:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c6164647265737329", + "id": 6731, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15455:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + "value": "log(bool,bool,address)" + }, + { + "id": 6732, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6721, + "src": "15481:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6733, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6723, + "src": "15485:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6734, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6725, + "src": "15489:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6729, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15431:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15431:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15431:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6728, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15415:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15415:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6737, + "nodeType": "ExpressionStatement", + "src": "15415:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15357:3:4", + "parameters": { + "id": 6726, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6721, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15366:2:4", + "nodeType": "VariableDeclaration", + "scope": 6739, + "src": "15361:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6720, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15361:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6723, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15375:2:4", + "nodeType": "VariableDeclaration", + "scope": 6739, + "src": "15370:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6722, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15370:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6725, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15387:2:4", + "nodeType": "VariableDeclaration", + "scope": 6739, + "src": "15379:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6724, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15379:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15360:30:4" + }, + "returnParameters": { + "id": 6727, + "nodeType": "ParameterList", + "parameters": [], + "src": "15405:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6759, + "nodeType": "FunctionDefinition", + "src": "15506:152:4", + "body": { + "id": 6758, + "nodeType": "Block", + "src": "15563:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e7429", + "id": 6751, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15613:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb704bafbd89369a907d48394b6acdacf482ae42cc2aaedd1cc37e89b4054b3d", + "typeString": "literal_string \"log(bool,address,uint)\"" + }, + "value": "log(bool,address,uint)" + }, + { + "id": 6752, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6741, + "src": "15639:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6753, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6743, + "src": "15643:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6754, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6745, + "src": "15647:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb704bafbd89369a907d48394b6acdacf482ae42cc2aaedd1cc37e89b4054b3d", + "typeString": "literal_string \"log(bool,address,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6749, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15589:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15589:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15589:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6748, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15573:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15573:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6757, + "nodeType": "ExpressionStatement", + "src": "15573:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15515:3:4", + "parameters": { + "id": 6746, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6741, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15524:2:4", + "nodeType": "VariableDeclaration", + "scope": 6759, + "src": "15519:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6740, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15519:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6743, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15536:2:4", + "nodeType": "VariableDeclaration", + "scope": 6759, + "src": "15528:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6742, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15528:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6745, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15545:2:4", + "nodeType": "VariableDeclaration", + "scope": 6759, + "src": "15540:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6744, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15540:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15518:30:4" + }, + "returnParameters": { + "id": 6747, + "nodeType": "ParameterList", + "parameters": [], + "src": "15563:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6779, + "nodeType": "FunctionDefinition", + "src": "15664:163:4", + "body": { + "id": 6778, + "nodeType": "Block", + "src": "15730:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e6729", + "id": 6771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15780:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + "value": "log(bool,address,string)" + }, + { + "id": 6772, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6761, + "src": "15808:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6773, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6763, + "src": "15812:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6774, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6765, + "src": "15816:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6769, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15756:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15756:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15756:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6768, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15740:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15740:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6777, + "nodeType": "ExpressionStatement", + "src": "15740:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15673:3:4", + "parameters": { + "id": 6766, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6761, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15682:2:4", + "nodeType": "VariableDeclaration", + "scope": 6779, + "src": "15677:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6760, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15677:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6763, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15694:2:4", + "nodeType": "VariableDeclaration", + "scope": 6779, + "src": "15686:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6762, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15686:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6765, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15712:2:4", + "nodeType": "VariableDeclaration", + "scope": 6779, + "src": "15698:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6764, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15698:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15676:39:4" + }, + "returnParameters": { + "id": 6767, + "nodeType": "ParameterList", + "parameters": [], + "src": "15730:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6799, + "nodeType": "FunctionDefinition", + "src": "15833:152:4", + "body": { + "id": 6798, + "nodeType": "Block", + "src": "15890:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c29", + "id": 6791, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15940:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + "value": "log(bool,address,bool)" + }, + { + "id": 6792, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6781, + "src": "15966:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6793, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6783, + "src": "15970:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6794, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6785, + "src": "15974:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6789, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15916:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6790, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15916:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6795, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15916:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6788, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "15900:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6796, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15900:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6797, + "nodeType": "ExpressionStatement", + "src": "15900:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15842:3:4", + "parameters": { + "id": 6786, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6781, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15851:2:4", + "nodeType": "VariableDeclaration", + "scope": 6799, + "src": "15846:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6780, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15846:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6783, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15863:2:4", + "nodeType": "VariableDeclaration", + "scope": 6799, + "src": "15855:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6782, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15855:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6785, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15872:2:4", + "nodeType": "VariableDeclaration", + "scope": 6799, + "src": "15867:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6784, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15867:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15845:30:4" + }, + "returnParameters": { + "id": 6787, + "nodeType": "ParameterList", + "parameters": [], + "src": "15890:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6819, + "nodeType": "FunctionDefinition", + "src": "15991:158:4", + "body": { + "id": 6818, + "nodeType": "Block", + "src": "16051:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c6164647265737329", + "id": 6811, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16101:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + "value": "log(bool,address,address)" + }, + { + "id": 6812, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6801, + "src": "16130:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6813, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6803, + "src": "16134:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6814, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6805, + "src": "16138:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6809, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16077:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16077:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16077:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6808, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16061:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16061:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6817, + "nodeType": "ExpressionStatement", + "src": "16061:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16000:3:4", + "parameters": { + "id": 6806, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6801, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16009:2:4", + "nodeType": "VariableDeclaration", + "scope": 6819, + "src": "16004:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6800, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16004:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6803, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16021:2:4", + "nodeType": "VariableDeclaration", + "scope": 6819, + "src": "16013:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6802, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16013:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6805, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16033:2:4", + "nodeType": "VariableDeclaration", + "scope": 6819, + "src": "16025:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6804, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16025:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16003:33:4" + }, + "returnParameters": { + "id": 6807, + "nodeType": "ParameterList", + "parameters": [], + "src": "16051:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6839, + "nodeType": "FunctionDefinition", + "src": "16155:152:4", + "body": { + "id": 6838, + "nodeType": "Block", + "src": "16212:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c75696e7429", + "id": 6831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16262:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8786135eae1a8e4736031518026bd3bd30886c3cc8d3e8bdedd6faea426de5ea", + "typeString": "literal_string \"log(address,uint,uint)\"" + }, + "value": "log(address,uint,uint)" + }, + { + "id": 6832, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6821, + "src": "16288:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6833, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6823, + "src": "16292:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6834, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6825, + "src": "16296:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8786135eae1a8e4736031518026bd3bd30886c3cc8d3e8bdedd6faea426de5ea", + "typeString": "literal_string \"log(address,uint,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6829, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16238:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16238:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16238:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6828, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16222:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6836, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16222:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6837, + "nodeType": "ExpressionStatement", + "src": "16222:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16164:3:4", + "parameters": { + "id": 6826, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6821, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16176:2:4", + "nodeType": "VariableDeclaration", + "scope": 6839, + "src": "16168:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6820, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16168:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6823, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16185:2:4", + "nodeType": "VariableDeclaration", + "scope": 6839, + "src": "16180:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6822, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16180:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6825, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16194:2:4", + "nodeType": "VariableDeclaration", + "scope": 6839, + "src": "16189:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6824, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16189:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16167:30:4" + }, + "returnParameters": { + "id": 6827, + "nodeType": "ParameterList", + "parameters": [], + "src": "16212:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6859, + "nodeType": "FunctionDefinition", + "src": "16313:163:4", + "body": { + "id": 6858, + "nodeType": "Block", + "src": "16379:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c737472696e6729", + "id": 6851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16429:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_baf968498a2094de432bd16841b992056c14db9f313a6b44c3156c2b5f1dc2b4", + "typeString": "literal_string \"log(address,uint,string)\"" + }, + "value": "log(address,uint,string)" + }, + { + "id": 6852, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6841, + "src": "16457:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6853, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6843, + "src": "16461:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6854, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6845, + "src": "16465:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_baf968498a2094de432bd16841b992056c14db9f313a6b44c3156c2b5f1dc2b4", + "typeString": "literal_string \"log(address,uint,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6849, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16405:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16405:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16405:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6848, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16389:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16389:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6857, + "nodeType": "ExpressionStatement", + "src": "16389:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16322:3:4", + "parameters": { + "id": 6846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6841, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16334:2:4", + "nodeType": "VariableDeclaration", + "scope": 6859, + "src": "16326:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6840, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16326:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6843, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16343:2:4", + "nodeType": "VariableDeclaration", + "scope": 6859, + "src": "16338:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6842, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16338:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6845, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16361:2:4", + "nodeType": "VariableDeclaration", + "scope": 6859, + "src": "16347:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6844, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16347:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "16325:39:4" + }, + "returnParameters": { + "id": 6847, + "nodeType": "ParameterList", + "parameters": [], + "src": "16379:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6879, + "nodeType": "FunctionDefinition", + "src": "16482:152:4", + "body": { + "id": 6878, + "nodeType": "Block", + "src": "16539:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c626f6f6c29", + "id": 6871, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16589:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e54ae1445cd51f09e801fc5885e33c709102997417d3d9b6f543f7724468b4e4", + "typeString": "literal_string \"log(address,uint,bool)\"" + }, + "value": "log(address,uint,bool)" + }, + { + "id": 6872, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6861, + "src": "16615:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6873, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6863, + "src": "16619:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6874, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6865, + "src": "16623:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e54ae1445cd51f09e801fc5885e33c709102997417d3d9b6f543f7724468b4e4", + "typeString": "literal_string \"log(address,uint,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6869, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16565:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6870, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16565:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16565:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6868, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16549:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6876, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16549:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6877, + "nodeType": "ExpressionStatement", + "src": "16549:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16491:3:4", + "parameters": { + "id": 6866, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6861, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16503:2:4", + "nodeType": "VariableDeclaration", + "scope": 6879, + "src": "16495:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6860, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16495:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6863, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16512:2:4", + "nodeType": "VariableDeclaration", + "scope": 6879, + "src": "16507:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6862, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16507:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6865, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16521:2:4", + "nodeType": "VariableDeclaration", + "scope": 6879, + "src": "16516:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6864, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16516:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "16494:30:4" + }, + "returnParameters": { + "id": 6867, + "nodeType": "ParameterList", + "parameters": [], + "src": "16539:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6899, + "nodeType": "FunctionDefinition", + "src": "16640:158:4", + "body": { + "id": 6898, + "nodeType": "Block", + "src": "16700:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c6164647265737329", + "id": 6891, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16750:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97eca3948a309251ff02cc4a3cb96f84ac4b6b4bdc56e86c9f0131c9b70c6259", + "typeString": "literal_string \"log(address,uint,address)\"" + }, + "value": "log(address,uint,address)" + }, + { + "id": 6892, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6881, + "src": "16779:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6893, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6883, + "src": "16783:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 6894, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6885, + "src": "16787:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_97eca3948a309251ff02cc4a3cb96f84ac4b6b4bdc56e86c9f0131c9b70c6259", + "typeString": "literal_string \"log(address,uint,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6889, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16726:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16726:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16726:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6888, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16710:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16710:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6897, + "nodeType": "ExpressionStatement", + "src": "16710:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16649:3:4", + "parameters": { + "id": 6886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6881, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16661:2:4", + "nodeType": "VariableDeclaration", + "scope": 6899, + "src": "16653:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6880, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16653:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6883, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16670:2:4", + "nodeType": "VariableDeclaration", + "scope": 6899, + "src": "16665:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6882, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16665:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6885, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16682:2:4", + "nodeType": "VariableDeclaration", + "scope": 6899, + "src": "16674:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6884, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16674:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16652:33:4" + }, + "returnParameters": { + "id": 6887, + "nodeType": "ParameterList", + "parameters": [], + "src": "16700:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6919, + "nodeType": "FunctionDefinition", + "src": "16804:163:4", + "body": { + "id": 6918, + "nodeType": "Block", + "src": "16870:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e7429", + "id": 6911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16920:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1cdaf28a630ff01c83e1629295cea6793da60638603e831a5c07be53dbee3597", + "typeString": "literal_string \"log(address,string,uint)\"" + }, + "value": "log(address,string,uint)" + }, + { + "id": 6912, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6901, + "src": "16948:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6913, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6903, + "src": "16952:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6914, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6905, + "src": "16956:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1cdaf28a630ff01c83e1629295cea6793da60638603e831a5c07be53dbee3597", + "typeString": "literal_string \"log(address,string,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6909, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16896:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16896:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16896:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6908, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "16880:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16880:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6917, + "nodeType": "ExpressionStatement", + "src": "16880:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16813:3:4", + "parameters": { + "id": 6906, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6901, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16825:2:4", + "nodeType": "VariableDeclaration", + "scope": 6919, + "src": "16817:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16817:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6903, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16843:2:4", + "nodeType": "VariableDeclaration", + "scope": 6919, + "src": "16829:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6902, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16829:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6905, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16852:2:4", + "nodeType": "VariableDeclaration", + "scope": 6919, + "src": "16847:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6904, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "16847:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16816:39:4" + }, + "returnParameters": { + "id": 6907, + "nodeType": "ParameterList", + "parameters": [], + "src": "16870:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6939, + "nodeType": "FunctionDefinition", + "src": "16973:174:4", + "body": { + "id": 6938, + "nodeType": "Block", + "src": "17048:99:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e6729", + "id": 6931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17098:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + "value": "log(address,string,string)" + }, + { + "id": 6932, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6921, + "src": "17128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6933, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6923, + "src": "17132:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6934, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6925, + "src": "17136:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 6929, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17074:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17074:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17074:65:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6928, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17058:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17058:82:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6937, + "nodeType": "ExpressionStatement", + "src": "17058:82:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16982:3:4", + "parameters": { + "id": 6926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6921, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16994:2:4", + "nodeType": "VariableDeclaration", + "scope": 6939, + "src": "16986:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16986:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6923, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17012:2:4", + "nodeType": "VariableDeclaration", + "scope": 6939, + "src": "16998:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6922, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16998:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6925, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17030:2:4", + "nodeType": "VariableDeclaration", + "scope": 6939, + "src": "17016:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6924, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17016:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "16985:48:4" + }, + "returnParameters": { + "id": 6927, + "nodeType": "ParameterList", + "parameters": [], + "src": "17048:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6959, + "nodeType": "FunctionDefinition", + "src": "17153:163:4", + "body": { + "id": 6958, + "nodeType": "Block", + "src": "17219:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c29", + "id": 6951, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17269:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + "value": "log(address,string,bool)" + }, + { + "id": 6952, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6941, + "src": "17297:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6953, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6943, + "src": "17301:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6954, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6945, + "src": "17305:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 6949, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17245:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6950, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17245:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17245:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6948, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17229:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6956, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17229:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6957, + "nodeType": "ExpressionStatement", + "src": "17229:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17162:3:4", + "parameters": { + "id": 6946, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6941, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17174:2:4", + "nodeType": "VariableDeclaration", + "scope": 6959, + "src": "17166:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6940, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17166:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6943, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17192:2:4", + "nodeType": "VariableDeclaration", + "scope": 6959, + "src": "17178:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6942, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17178:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6945, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17201:2:4", + "nodeType": "VariableDeclaration", + "scope": 6959, + "src": "17196:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6944, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17196:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17165:39:4" + }, + "returnParameters": { + "id": 6947, + "nodeType": "ParameterList", + "parameters": [], + "src": "17219:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6979, + "nodeType": "FunctionDefinition", + "src": "17322:169:4", + "body": { + "id": 6978, + "nodeType": "Block", + "src": "17391:100:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c6164647265737329", + "id": 6971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17441:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + "value": "log(address,string,address)" + }, + { + "id": 6972, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6961, + "src": "17472:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6973, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6963, + "src": "17476:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 6974, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6965, + "src": "17480:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 6969, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17417:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17417:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17417:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6968, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17401:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17401:83:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6977, + "nodeType": "ExpressionStatement", + "src": "17401:83:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17331:3:4", + "parameters": { + "id": 6966, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6961, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17343:2:4", + "nodeType": "VariableDeclaration", + "scope": 6979, + "src": "17335:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6960, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17335:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6963, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17361:2:4", + "nodeType": "VariableDeclaration", + "scope": 6979, + "src": "17347:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6962, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17347:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6965, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17373:2:4", + "nodeType": "VariableDeclaration", + "scope": 6979, + "src": "17365:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6964, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17365:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17334:42:4" + }, + "returnParameters": { + "id": 6967, + "nodeType": "ParameterList", + "parameters": [], + "src": "17391:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 6999, + "nodeType": "FunctionDefinition", + "src": "17497:152:4", + "body": { + "id": 6998, + "nodeType": "Block", + "src": "17554:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e7429", + "id": 6991, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17604:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c468d157d9cb3bd4f3bc977d201b067de313f8e774b0377d5c5b2b5c9426095", + "typeString": "literal_string \"log(address,bool,uint)\"" + }, + "value": "log(address,bool,uint)" + }, + { + "id": 6992, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6981, + "src": "17630:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 6993, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6983, + "src": "17634:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 6994, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 6985, + "src": "17638:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c468d157d9cb3bd4f3bc977d201b067de313f8e774b0377d5c5b2b5c9426095", + "typeString": "literal_string \"log(address,bool,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 6989, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17580:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 6990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17580:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 6995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17580:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 6988, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17564:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 6996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17564:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 6997, + "nodeType": "ExpressionStatement", + "src": "17564:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17506:3:4", + "parameters": { + "id": 6986, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 6981, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17518:2:4", + "nodeType": "VariableDeclaration", + "scope": 6999, + "src": "17510:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 6980, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17510:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6983, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17527:2:4", + "nodeType": "VariableDeclaration", + "scope": 6999, + "src": "17522:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 6982, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17522:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 6985, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17536:2:4", + "nodeType": "VariableDeclaration", + "scope": 6999, + "src": "17531:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 6984, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "17531:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17509:30:4" + }, + "returnParameters": { + "id": 6987, + "nodeType": "ParameterList", + "parameters": [], + "src": "17554:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7019, + "nodeType": "FunctionDefinition", + "src": "17655:163:4", + "body": { + "id": 7018, + "nodeType": "Block", + "src": "17721:97:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e6729", + "id": 7011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17771:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + "value": "log(address,bool,string)" + }, + { + "id": 7012, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7001, + "src": "17799:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7013, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7003, + "src": "17803:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7014, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7005, + "src": "17807:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7009, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17747:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17747:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17747:63:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7008, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17731:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17731:80:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7017, + "nodeType": "ExpressionStatement", + "src": "17731:80:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17664:3:4", + "parameters": { + "id": 7006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7001, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17676:2:4", + "nodeType": "VariableDeclaration", + "scope": 7019, + "src": "17668:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7000, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17668:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7003, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17685:2:4", + "nodeType": "VariableDeclaration", + "scope": 7019, + "src": "17680:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7002, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17680:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7005, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17703:2:4", + "nodeType": "VariableDeclaration", + "scope": 7019, + "src": "17689:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7004, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17689:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "17667:39:4" + }, + "returnParameters": { + "id": 7007, + "nodeType": "ParameterList", + "parameters": [], + "src": "17721:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7039, + "nodeType": "FunctionDefinition", + "src": "17824:152:4", + "body": { + "id": 7038, + "nodeType": "Block", + "src": "17881:95:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c29", + "id": 7031, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17931:24:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + "value": "log(address,bool,bool)" + }, + { + "id": 7032, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7021, + "src": "17957:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7033, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7023, + "src": "17961:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7034, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7025, + "src": "17965:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7029, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17907:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7030, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17907:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17907:61:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7028, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "17891:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7036, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17891:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7037, + "nodeType": "ExpressionStatement", + "src": "17891:78:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17833:3:4", + "parameters": { + "id": 7026, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7021, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17845:2:4", + "nodeType": "VariableDeclaration", + "scope": 7039, + "src": "17837:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7020, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17837:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7023, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17854:2:4", + "nodeType": "VariableDeclaration", + "scope": 7039, + "src": "17849:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7022, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17849:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7025, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17863:2:4", + "nodeType": "VariableDeclaration", + "scope": 7039, + "src": "17858:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7024, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17858:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17836:30:4" + }, + "returnParameters": { + "id": 7027, + "nodeType": "ParameterList", + "parameters": [], + "src": "17881:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7059, + "nodeType": "FunctionDefinition", + "src": "17982:158:4", + "body": { + "id": 7058, + "nodeType": "Block", + "src": "18042:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c6164647265737329", + "id": 7051, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18092:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + "value": "log(address,bool,address)" + }, + { + "id": 7052, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7041, + "src": "18121:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7053, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7043, + "src": "18125:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7054, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7045, + "src": "18129:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7049, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18068:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18068:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18068:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7048, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18052:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18052:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7057, + "nodeType": "ExpressionStatement", + "src": "18052:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17991:3:4", + "parameters": { + "id": 7046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7041, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18003:2:4", + "nodeType": "VariableDeclaration", + "scope": 7059, + "src": "17995:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7040, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17995:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7043, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18012:2:4", + "nodeType": "VariableDeclaration", + "scope": 7059, + "src": "18007:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7042, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18007:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7045, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18024:2:4", + "nodeType": "VariableDeclaration", + "scope": 7059, + "src": "18016:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7044, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18016:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17994:33:4" + }, + "returnParameters": { + "id": 7047, + "nodeType": "ParameterList", + "parameters": [], + "src": "18042:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7079, + "nodeType": "FunctionDefinition", + "src": "18146:158:4", + "body": { + "id": 7078, + "nodeType": "Block", + "src": "18206:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e7429", + "id": 7071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18256:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c366d7295b93bbfacc4df0ea28f0eef60efacfffd447f8f2823cbe5b2fedb07", + "typeString": "literal_string \"log(address,address,uint)\"" + }, + "value": "log(address,address,uint)" + }, + { + "id": 7072, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7061, + "src": "18285:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7073, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7063, + "src": "18289:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7074, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7065, + "src": "18293:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c366d7295b93bbfacc4df0ea28f0eef60efacfffd447f8f2823cbe5b2fedb07", + "typeString": "literal_string \"log(address,address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7069, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18232:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18232:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18232:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7068, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18216:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18216:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7077, + "nodeType": "ExpressionStatement", + "src": "18216:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18155:3:4", + "parameters": { + "id": 7066, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7061, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18167:2:4", + "nodeType": "VariableDeclaration", + "scope": 7079, + "src": "18159:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7060, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18159:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7063, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18179:2:4", + "nodeType": "VariableDeclaration", + "scope": 7079, + "src": "18171:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7062, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18171:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7065, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18188:2:4", + "nodeType": "VariableDeclaration", + "scope": 7079, + "src": "18183:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7064, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18183:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18158:33:4" + }, + "returnParameters": { + "id": 7067, + "nodeType": "ParameterList", + "parameters": [], + "src": "18206:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7099, + "nodeType": "FunctionDefinition", + "src": "18310:169:4", + "body": { + "id": 7098, + "nodeType": "Block", + "src": "18379:100:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e6729", + "id": 7091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18429:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + "value": "log(address,address,string)" + }, + { + "id": 7092, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7081, + "src": "18460:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7093, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7083, + "src": "18464:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7094, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7085, + "src": "18468:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7089, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18405:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18405:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18405:66:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7088, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18389:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18389:83:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7097, + "nodeType": "ExpressionStatement", + "src": "18389:83:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18319:3:4", + "parameters": { + "id": 7086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7081, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18331:2:4", + "nodeType": "VariableDeclaration", + "scope": 7099, + "src": "18323:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7080, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18323:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7083, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18343:2:4", + "nodeType": "VariableDeclaration", + "scope": 7099, + "src": "18335:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7082, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18335:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7085, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18361:2:4", + "nodeType": "VariableDeclaration", + "scope": 7099, + "src": "18347:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7084, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18347:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "18322:42:4" + }, + "returnParameters": { + "id": 7087, + "nodeType": "ParameterList", + "parameters": [], + "src": "18379:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7119, + "nodeType": "FunctionDefinition", + "src": "18485:158:4", + "body": { + "id": 7118, + "nodeType": "Block", + "src": "18545:98:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c29", + "id": 7111, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18595:27:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + "value": "log(address,address,bool)" + }, + { + "id": 7112, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7101, + "src": "18624:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7113, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7103, + "src": "18628:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7114, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7105, + "src": "18632:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7109, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18571:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18571:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18571:64:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7108, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18555:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18555:81:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7117, + "nodeType": "ExpressionStatement", + "src": "18555:81:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18494:3:4", + "parameters": { + "id": 7106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7101, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18506:2:4", + "nodeType": "VariableDeclaration", + "scope": 7119, + "src": "18498:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18498:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7103, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18518:2:4", + "nodeType": "VariableDeclaration", + "scope": 7119, + "src": "18510:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18510:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7105, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18527:2:4", + "nodeType": "VariableDeclaration", + "scope": 7119, + "src": "18522:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7104, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18522:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "18497:33:4" + }, + "returnParameters": { + "id": 7107, + "nodeType": "ParameterList", + "parameters": [], + "src": "18545:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7139, + "nodeType": "FunctionDefinition", + "src": "18649:164:4", + "body": { + "id": 7138, + "nodeType": "Block", + "src": "18712:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c6164647265737329", + "id": 7131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18762:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + "value": "log(address,address,address)" + }, + { + "id": 7132, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7121, + "src": "18794:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7133, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7123, + "src": "18798:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7134, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7125, + "src": "18802:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7129, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18738:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7130, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18738:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18738:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7128, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18722:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18722:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7137, + "nodeType": "ExpressionStatement", + "src": "18722:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18658:3:4", + "parameters": { + "id": 7126, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7121, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18670:2:4", + "nodeType": "VariableDeclaration", + "scope": 7139, + "src": "18662:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7120, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18662:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7123, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18682:2:4", + "nodeType": "VariableDeclaration", + "scope": 7139, + "src": "18674:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7122, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18674:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7125, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18694:2:4", + "nodeType": "VariableDeclaration", + "scope": 7139, + "src": "18686:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7124, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18686:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "18661:36:4" + }, + "returnParameters": { + "id": 7127, + "nodeType": "ParameterList", + "parameters": [], + "src": "18712:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7162, + "nodeType": "FunctionDefinition", + "src": "18819:164:4", + "body": { + "id": 7161, + "nodeType": "Block", + "src": "18882:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c75696e742c75696e7429", + "id": 7153, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18932:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ca0ad3ec7f731e4661cde447171efd221faf44c50b57eba4cc4965c1f89c0b6", + "typeString": "literal_string \"log(uint,uint,uint,uint)\"" + }, + "value": "log(uint,uint,uint,uint)" + }, + { + "id": 7154, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7141, + "src": "18960:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7155, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7143, + "src": "18964:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7156, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7145, + "src": "18968:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7157, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7147, + "src": "18972:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ca0ad3ec7f731e4661cde447171efd221faf44c50b57eba4cc4965c1f89c0b6", + "typeString": "literal_string \"log(uint,uint,uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7151, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18908:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18908:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18908:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7150, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "18892:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18892:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7160, + "nodeType": "ExpressionStatement", + "src": "18892:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18828:3:4", + "parameters": { + "id": 7148, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7141, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18837:2:4", + "nodeType": "VariableDeclaration", + "scope": 7162, + "src": "18832:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7140, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18832:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7143, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18846:2:4", + "nodeType": "VariableDeclaration", + "scope": 7162, + "src": "18841:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7142, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18841:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7145, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18855:2:4", + "nodeType": "VariableDeclaration", + "scope": 7162, + "src": "18850:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7144, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18850:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7147, + "mutability": "mutable", + "name": "p3", + "nameLocation": "18864:2:4", + "nodeType": "VariableDeclaration", + "scope": 7162, + "src": "18859:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7146, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "18859:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18831:36:4" + }, + "returnParameters": { + "id": 7149, + "nodeType": "ParameterList", + "parameters": [], + "src": "18882:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7185, + "nodeType": "FunctionDefinition", + "src": "18989:175:4", + "body": { + "id": 7184, + "nodeType": "Block", + "src": "19061:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c75696e742c737472696e6729", + "id": 7176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19111:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_78ad7a0c8cf57ba0e3b9e892fd6558ba40a5d4c84ef5c8c5e36bfc8d7f23b0c5", + "typeString": "literal_string \"log(uint,uint,uint,string)\"" + }, + "value": "log(uint,uint,uint,string)" + }, + { + "id": 7177, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7164, + "src": "19141:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7178, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7166, + "src": "19145:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7179, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7168, + "src": "19149:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7180, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7170, + "src": "19153:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_78ad7a0c8cf57ba0e3b9e892fd6558ba40a5d4c84ef5c8c5e36bfc8d7f23b0c5", + "typeString": "literal_string \"log(uint,uint,uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7174, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19087:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19087:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19087:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7173, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19071:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19071:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7183, + "nodeType": "ExpressionStatement", + "src": "19071:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18998:3:4", + "parameters": { + "id": 7171, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7164, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19007:2:4", + "nodeType": "VariableDeclaration", + "scope": 7185, + "src": "19002:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7163, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19002:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7166, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19016:2:4", + "nodeType": "VariableDeclaration", + "scope": 7185, + "src": "19011:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7165, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19011:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7168, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19025:2:4", + "nodeType": "VariableDeclaration", + "scope": 7185, + "src": "19020:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7167, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19020:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7170, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19043:2:4", + "nodeType": "VariableDeclaration", + "scope": 7185, + "src": "19029:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7169, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19029:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19001:45:4" + }, + "returnParameters": { + "id": 7172, + "nodeType": "ParameterList", + "parameters": [], + "src": "19061:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7208, + "nodeType": "FunctionDefinition", + "src": "19170:164:4", + "body": { + "id": 7207, + "nodeType": "Block", + "src": "19233:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c75696e742c626f6f6c29", + "id": 7199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19283:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6452b9cbdf8b8479d7ee301237b2d6dfa173fc92538628ab30d643fb4351918f", + "typeString": "literal_string \"log(uint,uint,uint,bool)\"" + }, + "value": "log(uint,uint,uint,bool)" + }, + { + "id": 7200, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7187, + "src": "19311:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7201, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7189, + "src": "19315:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7202, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7191, + "src": "19319:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7203, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7193, + "src": "19323:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6452b9cbdf8b8479d7ee301237b2d6dfa173fc92538628ab30d643fb4351918f", + "typeString": "literal_string \"log(uint,uint,uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7197, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19259:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19259:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19259:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7196, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19243:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19243:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7206, + "nodeType": "ExpressionStatement", + "src": "19243:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19179:3:4", + "parameters": { + "id": 7194, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7187, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19188:2:4", + "nodeType": "VariableDeclaration", + "scope": 7208, + "src": "19183:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7186, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19183:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7189, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19197:2:4", + "nodeType": "VariableDeclaration", + "scope": 7208, + "src": "19192:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7188, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19192:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7191, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19206:2:4", + "nodeType": "VariableDeclaration", + "scope": 7208, + "src": "19201:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7190, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19201:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7193, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19215:2:4", + "nodeType": "VariableDeclaration", + "scope": 7208, + "src": "19210:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7192, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19210:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19182:36:4" + }, + "returnParameters": { + "id": 7195, + "nodeType": "ParameterList", + "parameters": [], + "src": "19233:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7231, + "nodeType": "FunctionDefinition", + "src": "19340:170:4", + "body": { + "id": 7230, + "nodeType": "Block", + "src": "19406:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c75696e742c6164647265737329", + "id": 7222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19456:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0853f69a5584c9e0aa87ddae9bd870cf5164166d612d334644e66176c1213ba", + "typeString": "literal_string \"log(uint,uint,uint,address)\"" + }, + "value": "log(uint,uint,uint,address)" + }, + { + "id": 7223, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7210, + "src": "19487:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7224, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7212, + "src": "19491:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7225, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7214, + "src": "19495:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7226, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7216, + "src": "19499:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0853f69a5584c9e0aa87ddae9bd870cf5164166d612d334644e66176c1213ba", + "typeString": "literal_string \"log(uint,uint,uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7220, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19432:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7221, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19432:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19432:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7219, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19416:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19416:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7229, + "nodeType": "ExpressionStatement", + "src": "19416:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19349:3:4", + "parameters": { + "id": 7217, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7210, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19358:2:4", + "nodeType": "VariableDeclaration", + "scope": 7231, + "src": "19353:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7209, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19353:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7212, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19367:2:4", + "nodeType": "VariableDeclaration", + "scope": 7231, + "src": "19362:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7211, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19362:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7214, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19376:2:4", + "nodeType": "VariableDeclaration", + "scope": 7231, + "src": "19371:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7213, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19371:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7216, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19388:2:4", + "nodeType": "VariableDeclaration", + "scope": 7231, + "src": "19380:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7215, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19380:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19352:39:4" + }, + "returnParameters": { + "id": 7218, + "nodeType": "ParameterList", + "parameters": [], + "src": "19406:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7254, + "nodeType": "FunctionDefinition", + "src": "19516:175:4", + "body": { + "id": 7253, + "nodeType": "Block", + "src": "19588:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c737472696e672c75696e7429", + "id": 7245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19638:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3894163d4e8f3eec101fb8e2c1029563bd05d05ee1d1790a46910ebbbdc3072e", + "typeString": "literal_string \"log(uint,uint,string,uint)\"" + }, + "value": "log(uint,uint,string,uint)" + }, + { + "id": 7246, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7233, + "src": "19668:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7247, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7235, + "src": "19672:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7248, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7237, + "src": "19676:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7249, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7239, + "src": "19680:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3894163d4e8f3eec101fb8e2c1029563bd05d05ee1d1790a46910ebbbdc3072e", + "typeString": "literal_string \"log(uint,uint,string,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7243, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19614:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7244, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19614:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7250, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19614:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7242, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19598:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19598:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7252, + "nodeType": "ExpressionStatement", + "src": "19598:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19525:3:4", + "parameters": { + "id": 7240, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7233, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19534:2:4", + "nodeType": "VariableDeclaration", + "scope": 7254, + "src": "19529:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7232, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19529:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7235, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19543:2:4", + "nodeType": "VariableDeclaration", + "scope": 7254, + "src": "19538:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7234, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19538:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7237, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19561:2:4", + "nodeType": "VariableDeclaration", + "scope": 7254, + "src": "19547:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7236, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19547:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7239, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19570:2:4", + "nodeType": "VariableDeclaration", + "scope": 7254, + "src": "19565:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7238, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19565:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "19528:45:4" + }, + "returnParameters": { + "id": 7241, + "nodeType": "ParameterList", + "parameters": [], + "src": "19588:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7277, + "nodeType": "FunctionDefinition", + "src": "19697:186:4", + "body": { + "id": 7276, + "nodeType": "Block", + "src": "19778:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c737472696e672c737472696e6729", + "id": 7268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19828:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7c032a3207958e3d969ab52b045e7a59226129ee4b9e813f7071f9a5e80813f6", + "typeString": "literal_string \"log(uint,uint,string,string)\"" + }, + "value": "log(uint,uint,string,string)" + }, + { + "id": 7269, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7256, + "src": "19860:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7270, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7258, + "src": "19864:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7271, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7260, + "src": "19868:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7272, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7262, + "src": "19872:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7c032a3207958e3d969ab52b045e7a59226129ee4b9e813f7071f9a5e80813f6", + "typeString": "literal_string \"log(uint,uint,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7266, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19804:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7267, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19804:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19804:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7265, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19788:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7274, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19788:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7275, + "nodeType": "ExpressionStatement", + "src": "19788:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19706:3:4", + "parameters": { + "id": 7263, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7256, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19715:2:4", + "nodeType": "VariableDeclaration", + "scope": 7277, + "src": "19710:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7255, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19710:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7258, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19724:2:4", + "nodeType": "VariableDeclaration", + "scope": 7277, + "src": "19719:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7257, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19719:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7260, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19742:2:4", + "nodeType": "VariableDeclaration", + "scope": 7277, + "src": "19728:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7259, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19728:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7262, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19760:2:4", + "nodeType": "VariableDeclaration", + "scope": 7277, + "src": "19746:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7261, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19746:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19709:54:4" + }, + "returnParameters": { + "id": 7264, + "nodeType": "ParameterList", + "parameters": [], + "src": "19778:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7300, + "nodeType": "FunctionDefinition", + "src": "19889:175:4", + "body": { + "id": 7299, + "nodeType": "Block", + "src": "19961:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c737472696e672c626f6f6c29", + "id": 7291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20011:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b22eaf06d72d481cf9b94b8f4d5fb89cf08bbfd924ee166a250ac94617be65b9", + "typeString": "literal_string \"log(uint,uint,string,bool)\"" + }, + "value": "log(uint,uint,string,bool)" + }, + { + "id": 7292, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7279, + "src": "20041:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7293, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7281, + "src": "20045:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7294, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7283, + "src": "20049:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7295, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7285, + "src": "20053:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b22eaf06d72d481cf9b94b8f4d5fb89cf08bbfd924ee166a250ac94617be65b9", + "typeString": "literal_string \"log(uint,uint,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7289, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19987:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7290, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19987:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7296, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19987:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7288, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "19971:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19971:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7298, + "nodeType": "ExpressionStatement", + "src": "19971:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19898:3:4", + "parameters": { + "id": 7286, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7279, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19907:2:4", + "nodeType": "VariableDeclaration", + "scope": 7300, + "src": "19902:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7278, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19902:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7281, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19916:2:4", + "nodeType": "VariableDeclaration", + "scope": 7300, + "src": "19911:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7280, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "19911:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7283, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19934:2:4", + "nodeType": "VariableDeclaration", + "scope": 7300, + "src": "19920:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19920:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7285, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19943:2:4", + "nodeType": "VariableDeclaration", + "scope": 7300, + "src": "19938:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7284, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19938:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19901:45:4" + }, + "returnParameters": { + "id": 7287, + "nodeType": "ParameterList", + "parameters": [], + "src": "19961:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7323, + "nodeType": "FunctionDefinition", + "src": "20070:181:4", + "body": { + "id": 7322, + "nodeType": "Block", + "src": "20145:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c737472696e672c6164647265737329", + "id": 7314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20195:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_433285a23ec6b1f0f76da64682232527561857544109f80e3e5d46b0e16980e7", + "typeString": "literal_string \"log(uint,uint,string,address)\"" + }, + "value": "log(uint,uint,string,address)" + }, + { + "id": 7315, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7302, + "src": "20228:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7316, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7304, + "src": "20232:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7317, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7306, + "src": "20236:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7318, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7308, + "src": "20240:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_433285a23ec6b1f0f76da64682232527561857544109f80e3e5d46b0e16980e7", + "typeString": "literal_string \"log(uint,uint,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7312, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20171:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7313, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20171:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20171:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7311, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "20155:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20155:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7321, + "nodeType": "ExpressionStatement", + "src": "20155:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20079:3:4", + "parameters": { + "id": 7309, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7302, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20088:2:4", + "nodeType": "VariableDeclaration", + "scope": 7323, + "src": "20083:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7301, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20083:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7304, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20097:2:4", + "nodeType": "VariableDeclaration", + "scope": 7323, + "src": "20092:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7303, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20092:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7306, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20115:2:4", + "nodeType": "VariableDeclaration", + "scope": 7323, + "src": "20101:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7305, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20101:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7308, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20127:2:4", + "nodeType": "VariableDeclaration", + "scope": 7323, + "src": "20119:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7307, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20119:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20082:48:4" + }, + "returnParameters": { + "id": 7310, + "nodeType": "ParameterList", + "parameters": [], + "src": "20145:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7346, + "nodeType": "FunctionDefinition", + "src": "20257:164:4", + "body": { + "id": 7345, + "nodeType": "Block", + "src": "20320:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c626f6f6c2c75696e7429", + "id": 7337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20370:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c647c8c5fed6e02ad4f1c7bfb891e58ba00758f5d6cb92966fd0684c5b3fc8d", + "typeString": "literal_string \"log(uint,uint,bool,uint)\"" + }, + "value": "log(uint,uint,bool,uint)" + }, + { + "id": 7338, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7325, + "src": "20398:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7339, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7327, + "src": "20402:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7340, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7329, + "src": "20406:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7341, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7331, + "src": "20410:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c647c8c5fed6e02ad4f1c7bfb891e58ba00758f5d6cb92966fd0684c5b3fc8d", + "typeString": "literal_string \"log(uint,uint,bool,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7335, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20346:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7336, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20346:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20346:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7334, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "20330:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20330:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7344, + "nodeType": "ExpressionStatement", + "src": "20330:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20266:3:4", + "parameters": { + "id": 7332, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7325, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20275:2:4", + "nodeType": "VariableDeclaration", + "scope": 7346, + "src": "20270:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7324, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20270:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7327, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20284:2:4", + "nodeType": "VariableDeclaration", + "scope": 7346, + "src": "20279:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7326, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20279:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7329, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20293:2:4", + "nodeType": "VariableDeclaration", + "scope": 7346, + "src": "20288:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7328, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20288:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7331, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20302:2:4", + "nodeType": "VariableDeclaration", + "scope": 7346, + "src": "20297:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7330, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20297:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20269:36:4" + }, + "returnParameters": { + "id": 7333, + "nodeType": "ParameterList", + "parameters": [], + "src": "20320:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7369, + "nodeType": "FunctionDefinition", + "src": "20427:175:4", + "body": { + "id": 7368, + "nodeType": "Block", + "src": "20499:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c626f6f6c2c737472696e6729", + "id": 7360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20549:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_efd9cbeee79713372dd0a748a26a3fb36cbe4eb4e01a37fbde0cde0e101fc85a", + "typeString": "literal_string \"log(uint,uint,bool,string)\"" + }, + "value": "log(uint,uint,bool,string)" + }, + { + "id": 7361, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7348, + "src": "20579:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7362, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7350, + "src": "20583:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7363, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7352, + "src": "20587:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7364, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7354, + "src": "20591:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_efd9cbeee79713372dd0a748a26a3fb36cbe4eb4e01a37fbde0cde0e101fc85a", + "typeString": "literal_string \"log(uint,uint,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7358, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20525:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7359, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20525:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7365, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20525:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7357, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "20509:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20509:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7367, + "nodeType": "ExpressionStatement", + "src": "20509:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20436:3:4", + "parameters": { + "id": 7355, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7348, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20445:2:4", + "nodeType": "VariableDeclaration", + "scope": 7369, + "src": "20440:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7347, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20440:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7350, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20454:2:4", + "nodeType": "VariableDeclaration", + "scope": 7369, + "src": "20449:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7349, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20449:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7352, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20463:2:4", + "nodeType": "VariableDeclaration", + "scope": 7369, + "src": "20458:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7351, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20458:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7354, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20481:2:4", + "nodeType": "VariableDeclaration", + "scope": 7369, + "src": "20467:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7353, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20467:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "20439:45:4" + }, + "returnParameters": { + "id": 7356, + "nodeType": "ParameterList", + "parameters": [], + "src": "20499:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7392, + "nodeType": "FunctionDefinition", + "src": "20608:164:4", + "body": { + "id": 7391, + "nodeType": "Block", + "src": "20671:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c626f6f6c2c626f6f6c29", + "id": 7383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20721:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94be3bb13e096cdbc5a1999a524e3b6664a32da7e2c2954ae0e2b792a0dd1f41", + "typeString": "literal_string \"log(uint,uint,bool,bool)\"" + }, + "value": "log(uint,uint,bool,bool)" + }, + { + "id": 7384, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7371, + "src": "20749:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7385, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7373, + "src": "20753:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7386, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7375, + "src": "20757:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7387, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7377, + "src": "20761:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94be3bb13e096cdbc5a1999a524e3b6664a32da7e2c2954ae0e2b792a0dd1f41", + "typeString": "literal_string \"log(uint,uint,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7381, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20697:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20697:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7388, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20697:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7380, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "20681:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20681:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7390, + "nodeType": "ExpressionStatement", + "src": "20681:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20617:3:4", + "parameters": { + "id": 7378, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7371, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20626:2:4", + "nodeType": "VariableDeclaration", + "scope": 7392, + "src": "20621:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7370, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20621:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7373, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20635:2:4", + "nodeType": "VariableDeclaration", + "scope": 7392, + "src": "20630:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7372, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20630:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7375, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20644:2:4", + "nodeType": "VariableDeclaration", + "scope": 7392, + "src": "20639:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7374, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20639:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7377, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20653:2:4", + "nodeType": "VariableDeclaration", + "scope": 7392, + "src": "20648:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7376, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20648:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20620:36:4" + }, + "returnParameters": { + "id": 7379, + "nodeType": "ParameterList", + "parameters": [], + "src": "20671:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7415, + "nodeType": "FunctionDefinition", + "src": "20778:170:4", + "body": { + "id": 7414, + "nodeType": "Block", + "src": "20844:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c626f6f6c2c6164647265737329", + "id": 7406, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20894:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e117744fcc46e4484cabd18d640497b4a9d76b7f775e79fe9a95e42427bd8976", + "typeString": "literal_string \"log(uint,uint,bool,address)\"" + }, + "value": "log(uint,uint,bool,address)" + }, + { + "id": 7407, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7394, + "src": "20925:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7408, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7396, + "src": "20929:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7409, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7398, + "src": "20933:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7410, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7400, + "src": "20937:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e117744fcc46e4484cabd18d640497b4a9d76b7f775e79fe9a95e42427bd8976", + "typeString": "literal_string \"log(uint,uint,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7404, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20870:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20870:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20870:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7403, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "20854:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20854:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7413, + "nodeType": "ExpressionStatement", + "src": "20854:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20787:3:4", + "parameters": { + "id": 7401, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7394, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20796:2:4", + "nodeType": "VariableDeclaration", + "scope": 7415, + "src": "20791:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7393, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20791:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7396, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20805:2:4", + "nodeType": "VariableDeclaration", + "scope": 7415, + "src": "20800:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7395, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20800:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7398, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20814:2:4", + "nodeType": "VariableDeclaration", + "scope": 7415, + "src": "20809:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7397, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20809:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7400, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20826:2:4", + "nodeType": "VariableDeclaration", + "scope": 7415, + "src": "20818:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7399, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20818:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20790:39:4" + }, + "returnParameters": { + "id": 7402, + "nodeType": "ParameterList", + "parameters": [], + "src": "20844:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7438, + "nodeType": "FunctionDefinition", + "src": "20954:170:4", + "body": { + "id": 7437, + "nodeType": "Block", + "src": "21020:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c616464726573732c75696e7429", + "id": 7429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21070:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_610ba8c0cae1123f7f8ad76791afd86dc185a4f1fe79a263112118ddb5231e9f", + "typeString": "literal_string \"log(uint,uint,address,uint)\"" + }, + "value": "log(uint,uint,address,uint)" + }, + { + "id": 7430, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7417, + "src": "21101:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7431, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7419, + "src": "21105:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7432, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7421, + "src": "21109:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7433, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7423, + "src": "21113:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_610ba8c0cae1123f7f8ad76791afd86dc185a4f1fe79a263112118ddb5231e9f", + "typeString": "literal_string \"log(uint,uint,address,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7427, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21046:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21046:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21046:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7426, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21030:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21030:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7436, + "nodeType": "ExpressionStatement", + "src": "21030:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20963:3:4", + "parameters": { + "id": 7424, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7417, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20972:2:4", + "nodeType": "VariableDeclaration", + "scope": 7438, + "src": "20967:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7416, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20967:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7419, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20981:2:4", + "nodeType": "VariableDeclaration", + "scope": 7438, + "src": "20976:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7418, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20976:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7421, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20993:2:4", + "nodeType": "VariableDeclaration", + "scope": 7438, + "src": "20985:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7420, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20985:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7423, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21002:2:4", + "nodeType": "VariableDeclaration", + "scope": 7438, + "src": "20997:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7422, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "20997:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20966:39:4" + }, + "returnParameters": { + "id": 7425, + "nodeType": "ParameterList", + "parameters": [], + "src": "21020:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7461, + "nodeType": "FunctionDefinition", + "src": "21130:181:4", + "body": { + "id": 7460, + "nodeType": "Block", + "src": "21205:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c616464726573732c737472696e6729", + "id": 7452, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21255:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6a2d1de1bf5c0a47e82220cd592c8fb4a4a43f17ecab471044861ef70454227", + "typeString": "literal_string \"log(uint,uint,address,string)\"" + }, + "value": "log(uint,uint,address,string)" + }, + { + "id": 7453, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7440, + "src": "21288:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7454, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7442, + "src": "21292:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7455, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7444, + "src": "21296:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7456, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7446, + "src": "21300:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6a2d1de1bf5c0a47e82220cd592c8fb4a4a43f17ecab471044861ef70454227", + "typeString": "literal_string \"log(uint,uint,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7450, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21231:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21231:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7457, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21231:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7449, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21215:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21215:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7459, + "nodeType": "ExpressionStatement", + "src": "21215:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21139:3:4", + "parameters": { + "id": 7447, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7440, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21148:2:4", + "nodeType": "VariableDeclaration", + "scope": 7461, + "src": "21143:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7439, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21143:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7442, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21157:2:4", + "nodeType": "VariableDeclaration", + "scope": 7461, + "src": "21152:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7441, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21152:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7444, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21169:2:4", + "nodeType": "VariableDeclaration", + "scope": 7461, + "src": "21161:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21161:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7446, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21187:2:4", + "nodeType": "VariableDeclaration", + "scope": 7461, + "src": "21173:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7445, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21173:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "21142:48:4" + }, + "returnParameters": { + "id": 7448, + "nodeType": "ParameterList", + "parameters": [], + "src": "21205:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7484, + "nodeType": "FunctionDefinition", + "src": "21317:170:4", + "body": { + "id": 7483, + "nodeType": "Block", + "src": "21383:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c616464726573732c626f6f6c29", + "id": 7475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21433:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a8e820ae9dc5fd5a845e5dabf2b296e5588fe5a0d8101de14323ebe3e8e2b6c0", + "typeString": "literal_string \"log(uint,uint,address,bool)\"" + }, + "value": "log(uint,uint,address,bool)" + }, + { + "id": 7476, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7463, + "src": "21464:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7477, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7465, + "src": "21468:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7478, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7467, + "src": "21472:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7479, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7469, + "src": "21476:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a8e820ae9dc5fd5a845e5dabf2b296e5588fe5a0d8101de14323ebe3e8e2b6c0", + "typeString": "literal_string \"log(uint,uint,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7473, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21409:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21409:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21409:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7472, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21393:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21393:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7482, + "nodeType": "ExpressionStatement", + "src": "21393:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21326:3:4", + "parameters": { + "id": 7470, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7463, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21335:2:4", + "nodeType": "VariableDeclaration", + "scope": 7484, + "src": "21330:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7462, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21330:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7465, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21344:2:4", + "nodeType": "VariableDeclaration", + "scope": 7484, + "src": "21339:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7464, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21339:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7467, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21356:2:4", + "nodeType": "VariableDeclaration", + "scope": 7484, + "src": "21348:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7466, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21348:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7469, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21365:2:4", + "nodeType": "VariableDeclaration", + "scope": 7484, + "src": "21360:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7468, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21360:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "21329:39:4" + }, + "returnParameters": { + "id": 7471, + "nodeType": "ParameterList", + "parameters": [], + "src": "21383:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7507, + "nodeType": "FunctionDefinition", + "src": "21493:176:4", + "body": { + "id": 7506, + "nodeType": "Block", + "src": "21562:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c75696e742c616464726573732c6164647265737329", + "id": 7498, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21612:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca939b20e9284d76bbbc091d0d45d06f650171230ac4f1f35652b8b6e1579811", + "typeString": "literal_string \"log(uint,uint,address,address)\"" + }, + "value": "log(uint,uint,address,address)" + }, + { + "id": 7499, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7486, + "src": "21646:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7500, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7488, + "src": "21650:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7501, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7490, + "src": "21654:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7502, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7492, + "src": "21658:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca939b20e9284d76bbbc091d0d45d06f650171230ac4f1f35652b8b6e1579811", + "typeString": "literal_string \"log(uint,uint,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7496, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21588:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21588:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7503, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21588:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7495, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21572:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21572:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7505, + "nodeType": "ExpressionStatement", + "src": "21572:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21502:3:4", + "parameters": { + "id": 7493, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7486, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21511:2:4", + "nodeType": "VariableDeclaration", + "scope": 7507, + "src": "21506:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7485, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21506:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7488, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21520:2:4", + "nodeType": "VariableDeclaration", + "scope": 7507, + "src": "21515:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7487, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21515:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7490, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21532:2:4", + "nodeType": "VariableDeclaration", + "scope": 7507, + "src": "21524:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7489, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21524:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7492, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21544:2:4", + "nodeType": "VariableDeclaration", + "scope": 7507, + "src": "21536:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7491, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21536:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "21505:42:4" + }, + "returnParameters": { + "id": 7494, + "nodeType": "ParameterList", + "parameters": [], + "src": "21562:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7530, + "nodeType": "FunctionDefinition", + "src": "21675:175:4", + "body": { + "id": 7529, + "nodeType": "Block", + "src": "21747:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c75696e742c75696e7429", + "id": 7521, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21797:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c0043807b5f951e0375253205c951c6e6a6b19b5de111342e8f6be7c7f284628", + "typeString": "literal_string \"log(uint,string,uint,uint)\"" + }, + "value": "log(uint,string,uint,uint)" + }, + { + "id": 7522, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7509, + "src": "21827:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7523, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7511, + "src": "21831:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7524, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7513, + "src": "21835:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7525, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7515, + "src": "21839:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c0043807b5f951e0375253205c951c6e6a6b19b5de111342e8f6be7c7f284628", + "typeString": "literal_string \"log(uint,string,uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7519, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21773:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7520, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21773:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21773:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7518, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21757:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21757:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7528, + "nodeType": "ExpressionStatement", + "src": "21757:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21684:3:4", + "parameters": { + "id": 7516, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7509, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21693:2:4", + "nodeType": "VariableDeclaration", + "scope": 7530, + "src": "21688:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7508, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21688:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7511, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21711:2:4", + "nodeType": "VariableDeclaration", + "scope": 7530, + "src": "21697:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7510, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21697:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7513, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21720:2:4", + "nodeType": "VariableDeclaration", + "scope": 7530, + "src": "21715:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7512, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21715:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7515, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21729:2:4", + "nodeType": "VariableDeclaration", + "scope": 7530, + "src": "21724:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7514, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21724:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21687:45:4" + }, + "returnParameters": { + "id": 7517, + "nodeType": "ParameterList", + "parameters": [], + "src": "21747:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7553, + "nodeType": "FunctionDefinition", + "src": "21856:186:4", + "body": { + "id": 7552, + "nodeType": "Block", + "src": "21937:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c75696e742c737472696e6729", + "id": 7544, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21987:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a2bc0c99cedfd873182e8eb1e68799dc8925c663b8ce2430858586fba62fe313", + "typeString": "literal_string \"log(uint,string,uint,string)\"" + }, + "value": "log(uint,string,uint,string)" + }, + { + "id": 7545, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7532, + "src": "22019:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7546, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7534, + "src": "22023:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7547, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7536, + "src": "22027:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7548, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7538, + "src": "22031:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a2bc0c99cedfd873182e8eb1e68799dc8925c663b8ce2430858586fba62fe313", + "typeString": "literal_string \"log(uint,string,uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7542, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21963:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7543, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21963:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21963:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7541, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "21947:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21947:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7551, + "nodeType": "ExpressionStatement", + "src": "21947:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21865:3:4", + "parameters": { + "id": 7539, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7532, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21874:2:4", + "nodeType": "VariableDeclaration", + "scope": 7553, + "src": "21869:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7531, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21869:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7534, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21892:2:4", + "nodeType": "VariableDeclaration", + "scope": 7553, + "src": "21878:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7533, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21878:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7536, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21901:2:4", + "nodeType": "VariableDeclaration", + "scope": 7553, + "src": "21896:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7535, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "21896:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7538, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21919:2:4", + "nodeType": "VariableDeclaration", + "scope": 7553, + "src": "21905:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7537, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21905:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "21868:54:4" + }, + "returnParameters": { + "id": 7540, + "nodeType": "ParameterList", + "parameters": [], + "src": "21937:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7576, + "nodeType": "FunctionDefinition", + "src": "22048:175:4", + "body": { + "id": 7575, + "nodeType": "Block", + "src": "22120:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c75696e742c626f6f6c29", + "id": 7567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22170:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_875a6e2ed2444d0d09e264b06717914212d8a793bea0f48b5633e707ac53784d", + "typeString": "literal_string \"log(uint,string,uint,bool)\"" + }, + "value": "log(uint,string,uint,bool)" + }, + { + "id": 7568, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7555, + "src": "22200:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7569, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7557, + "src": "22204:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7570, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7559, + "src": "22208:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7571, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7561, + "src": "22212:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_875a6e2ed2444d0d09e264b06717914212d8a793bea0f48b5633e707ac53784d", + "typeString": "literal_string \"log(uint,string,uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7565, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22146:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7566, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22146:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22146:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7564, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "22130:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22130:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7574, + "nodeType": "ExpressionStatement", + "src": "22130:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22057:3:4", + "parameters": { + "id": 7562, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7555, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22066:2:4", + "nodeType": "VariableDeclaration", + "scope": 7576, + "src": "22061:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7554, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22061:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7557, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22084:2:4", + "nodeType": "VariableDeclaration", + "scope": 7576, + "src": "22070:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7556, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22070:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7559, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22093:2:4", + "nodeType": "VariableDeclaration", + "scope": 7576, + "src": "22088:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7558, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22088:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7561, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22102:2:4", + "nodeType": "VariableDeclaration", + "scope": 7576, + "src": "22097:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7560, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22097:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22060:45:4" + }, + "returnParameters": { + "id": 7563, + "nodeType": "ParameterList", + "parameters": [], + "src": "22120:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7599, + "nodeType": "FunctionDefinition", + "src": "22229:181:4", + "body": { + "id": 7598, + "nodeType": "Block", + "src": "22304:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c75696e742c6164647265737329", + "id": 7590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22354:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ab7bd9fd9b149127bbb235a3e1bec9a2e844f3968bdc1f48944c4b1973dacfda", + "typeString": "literal_string \"log(uint,string,uint,address)\"" + }, + "value": "log(uint,string,uint,address)" + }, + { + "id": 7591, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7578, + "src": "22387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7592, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7580, + "src": "22391:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7593, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7582, + "src": "22395:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7594, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7584, + "src": "22399:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ab7bd9fd9b149127bbb235a3e1bec9a2e844f3968bdc1f48944c4b1973dacfda", + "typeString": "literal_string \"log(uint,string,uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7588, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22330:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22330:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22330:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7587, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "22314:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22314:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7597, + "nodeType": "ExpressionStatement", + "src": "22314:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22238:3:4", + "parameters": { + "id": 7585, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7578, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22247:2:4", + "nodeType": "VariableDeclaration", + "scope": 7599, + "src": "22242:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7577, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22242:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7580, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22265:2:4", + "nodeType": "VariableDeclaration", + "scope": 7599, + "src": "22251:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7579, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22251:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7582, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22274:2:4", + "nodeType": "VariableDeclaration", + "scope": 7599, + "src": "22269:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7581, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22269:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7584, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22286:2:4", + "nodeType": "VariableDeclaration", + "scope": 7599, + "src": "22278:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7583, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22278:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22241:48:4" + }, + "returnParameters": { + "id": 7586, + "nodeType": "ParameterList", + "parameters": [], + "src": "22304:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7622, + "nodeType": "FunctionDefinition", + "src": "22416:186:4", + "body": { + "id": 7621, + "nodeType": "Block", + "src": "22497:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c737472696e672c75696e7429", + "id": 7613, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22547:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_76ec635e4702367bf449b895743175fa2654af8170b6d9c20dd183616d0a192b", + "typeString": "literal_string \"log(uint,string,string,uint)\"" + }, + "value": "log(uint,string,string,uint)" + }, + { + "id": 7614, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7601, + "src": "22579:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7615, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7603, + "src": "22583:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7616, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7605, + "src": "22587:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7617, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7607, + "src": "22591:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_76ec635e4702367bf449b895743175fa2654af8170b6d9c20dd183616d0a192b", + "typeString": "literal_string \"log(uint,string,string,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7611, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22523:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7612, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22523:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22523:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7610, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "22507:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22507:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7620, + "nodeType": "ExpressionStatement", + "src": "22507:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22425:3:4", + "parameters": { + "id": 7608, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7601, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22434:2:4", + "nodeType": "VariableDeclaration", + "scope": 7622, + "src": "22429:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7600, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22429:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7603, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22452:2:4", + "nodeType": "VariableDeclaration", + "scope": 7622, + "src": "22438:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7602, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22438:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7605, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22470:2:4", + "nodeType": "VariableDeclaration", + "scope": 7622, + "src": "22456:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7604, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22456:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7607, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22479:2:4", + "nodeType": "VariableDeclaration", + "scope": 7622, + "src": "22474:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7606, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22474:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22428:54:4" + }, + "returnParameters": { + "id": 7609, + "nodeType": "ParameterList", + "parameters": [], + "src": "22497:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7645, + "nodeType": "FunctionDefinition", + "src": "22608:197:4", + "body": { + "id": 7644, + "nodeType": "Block", + "src": "22698:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c737472696e672c737472696e6729", + "id": 7636, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22748:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_57dd0a119927787a0c91b48333e191a1b3a4082dcb6efc912e2ba5b047e15156", + "typeString": "literal_string \"log(uint,string,string,string)\"" + }, + "value": "log(uint,string,string,string)" + }, + { + "id": 7637, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7624, + "src": "22782:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7638, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7626, + "src": "22786:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7639, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7628, + "src": "22790:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7640, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7630, + "src": "22794:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_57dd0a119927787a0c91b48333e191a1b3a4082dcb6efc912e2ba5b047e15156", + "typeString": "literal_string \"log(uint,string,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7634, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22724:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22724:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22724:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7633, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "22708:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22708:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7643, + "nodeType": "ExpressionStatement", + "src": "22708:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22617:3:4", + "parameters": { + "id": 7631, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7624, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22626:2:4", + "nodeType": "VariableDeclaration", + "scope": 7645, + "src": "22621:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7623, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22621:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7626, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22644:2:4", + "nodeType": "VariableDeclaration", + "scope": 7645, + "src": "22630:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7625, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22630:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7628, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22662:2:4", + "nodeType": "VariableDeclaration", + "scope": 7645, + "src": "22648:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7627, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22648:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7630, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22680:2:4", + "nodeType": "VariableDeclaration", + "scope": 7645, + "src": "22666:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7629, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22666:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "22620:63:4" + }, + "returnParameters": { + "id": 7632, + "nodeType": "ParameterList", + "parameters": [], + "src": "22698:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7668, + "nodeType": "FunctionDefinition", + "src": "22811:186:4", + "body": { + "id": 7667, + "nodeType": "Block", + "src": "22892:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c737472696e672c626f6f6c29", + "id": 7659, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22942:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12862b98fdb7950b0e6908443bc9d7894b44d5616424da5cdb6206a848affcbc", + "typeString": "literal_string \"log(uint,string,string,bool)\"" + }, + "value": "log(uint,string,string,bool)" + }, + { + "id": 7660, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7647, + "src": "22974:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7661, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7649, + "src": "22978:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7662, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7651, + "src": "22982:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7663, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7653, + "src": "22986:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12862b98fdb7950b0e6908443bc9d7894b44d5616424da5cdb6206a848affcbc", + "typeString": "literal_string \"log(uint,string,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7657, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22918:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7658, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22918:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22918:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7656, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "22902:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22902:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7666, + "nodeType": "ExpressionStatement", + "src": "22902:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22820:3:4", + "parameters": { + "id": 7654, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7647, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22829:2:4", + "nodeType": "VariableDeclaration", + "scope": 7668, + "src": "22824:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7646, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "22824:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7649, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22847:2:4", + "nodeType": "VariableDeclaration", + "scope": 7668, + "src": "22833:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7648, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22833:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7651, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22865:2:4", + "nodeType": "VariableDeclaration", + "scope": 7668, + "src": "22851:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7650, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22851:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7653, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22874:2:4", + "nodeType": "VariableDeclaration", + "scope": 7668, + "src": "22869:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7652, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22869:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22823:54:4" + }, + "returnParameters": { + "id": 7655, + "nodeType": "ParameterList", + "parameters": [], + "src": "22892:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7691, + "nodeType": "FunctionDefinition", + "src": "23003:192:4", + "body": { + "id": 7690, + "nodeType": "Block", + "src": "23087:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c737472696e672c6164647265737329", + "id": 7682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23137:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc988aa0514d1ed8be70a6bf2bdff4972e3f3420811b4adbd40f9b75b873fded", + "typeString": "literal_string \"log(uint,string,string,address)\"" + }, + "value": "log(uint,string,string,address)" + }, + { + "id": 7683, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7670, + "src": "23172:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7684, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7672, + "src": "23176:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7685, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7674, + "src": "23180:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7686, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7676, + "src": "23184:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cc988aa0514d1ed8be70a6bf2bdff4972e3f3420811b4adbd40f9b75b873fded", + "typeString": "literal_string \"log(uint,string,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7680, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23113:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23113:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23113:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7679, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "23097:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23097:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7689, + "nodeType": "ExpressionStatement", + "src": "23097:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23012:3:4", + "parameters": { + "id": 7677, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7670, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23021:2:4", + "nodeType": "VariableDeclaration", + "scope": 7691, + "src": "23016:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7669, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23016:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7672, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23039:2:4", + "nodeType": "VariableDeclaration", + "scope": 7691, + "src": "23025:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7671, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23025:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7674, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23057:2:4", + "nodeType": "VariableDeclaration", + "scope": 7691, + "src": "23043:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7673, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23043:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7676, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23069:2:4", + "nodeType": "VariableDeclaration", + "scope": 7691, + "src": "23061:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7675, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23061:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23015:57:4" + }, + "returnParameters": { + "id": 7678, + "nodeType": "ParameterList", + "parameters": [], + "src": "23087:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7714, + "nodeType": "FunctionDefinition", + "src": "23201:175:4", + "body": { + "id": 7713, + "nodeType": "Block", + "src": "23273:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c626f6f6c2c75696e7429", + "id": 7705, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23323:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a4b48a7f4bdefee99950b35e5da7ba9724c3954e445cc3077000bce7a4265081", + "typeString": "literal_string \"log(uint,string,bool,uint)\"" + }, + "value": "log(uint,string,bool,uint)" + }, + { + "id": 7706, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7693, + "src": "23353:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7707, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7695, + "src": "23357:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7708, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7697, + "src": "23361:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7709, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7699, + "src": "23365:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a4b48a7f4bdefee99950b35e5da7ba9724c3954e445cc3077000bce7a4265081", + "typeString": "literal_string \"log(uint,string,bool,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7703, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23299:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7704, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23299:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23299:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7702, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "23283:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23283:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7712, + "nodeType": "ExpressionStatement", + "src": "23283:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23210:3:4", + "parameters": { + "id": 7700, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7693, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23219:2:4", + "nodeType": "VariableDeclaration", + "scope": 7714, + "src": "23214:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7692, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23214:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7695, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23237:2:4", + "nodeType": "VariableDeclaration", + "scope": 7714, + "src": "23223:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7694, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23223:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7697, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23246:2:4", + "nodeType": "VariableDeclaration", + "scope": 7714, + "src": "23241:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7696, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23241:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7699, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23255:2:4", + "nodeType": "VariableDeclaration", + "scope": 7714, + "src": "23250:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7698, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23250:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23213:45:4" + }, + "returnParameters": { + "id": 7701, + "nodeType": "ParameterList", + "parameters": [], + "src": "23273:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7737, + "nodeType": "FunctionDefinition", + "src": "23382:186:4", + "body": { + "id": 7736, + "nodeType": "Block", + "src": "23463:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c626f6f6c2c737472696e6729", + "id": 7728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23513:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8d489ca064b1083bafb8388fd8f3d44c2255dbe322f7a52abe786a76257d06e4", + "typeString": "literal_string \"log(uint,string,bool,string)\"" + }, + "value": "log(uint,string,bool,string)" + }, + { + "id": 7729, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7716, + "src": "23545:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7730, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7718, + "src": "23549:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7731, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7720, + "src": "23553:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7732, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7722, + "src": "23557:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8d489ca064b1083bafb8388fd8f3d44c2255dbe322f7a52abe786a76257d06e4", + "typeString": "literal_string \"log(uint,string,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7726, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23489:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23489:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23489:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7725, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "23473:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23473:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7735, + "nodeType": "ExpressionStatement", + "src": "23473:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23391:3:4", + "parameters": { + "id": 7723, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7716, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23400:2:4", + "nodeType": "VariableDeclaration", + "scope": 7737, + "src": "23395:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7715, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23395:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7718, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23418:2:4", + "nodeType": "VariableDeclaration", + "scope": 7737, + "src": "23404:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7717, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23404:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7720, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23427:2:4", + "nodeType": "VariableDeclaration", + "scope": 7737, + "src": "23422:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7719, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23422:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7722, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23445:2:4", + "nodeType": "VariableDeclaration", + "scope": 7737, + "src": "23431:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7721, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23431:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "23394:54:4" + }, + "returnParameters": { + "id": 7724, + "nodeType": "ParameterList", + "parameters": [], + "src": "23463:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7760, + "nodeType": "FunctionDefinition", + "src": "23574:175:4", + "body": { + "id": 7759, + "nodeType": "Block", + "src": "23646:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c626f6f6c2c626f6f6c29", + "id": 7751, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23696:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51bc2bc161debf765eefa84d88e06440adeb87045d559377a9edb97406168b2a", + "typeString": "literal_string \"log(uint,string,bool,bool)\"" + }, + "value": "log(uint,string,bool,bool)" + }, + { + "id": 7752, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7739, + "src": "23726:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7753, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7741, + "src": "23730:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7754, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7743, + "src": "23734:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7755, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7745, + "src": "23738:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51bc2bc161debf765eefa84d88e06440adeb87045d559377a9edb97406168b2a", + "typeString": "literal_string \"log(uint,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7749, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23672:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23672:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7756, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23672:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7748, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "23656:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23656:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7758, + "nodeType": "ExpressionStatement", + "src": "23656:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23583:3:4", + "parameters": { + "id": 7746, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7739, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23592:2:4", + "nodeType": "VariableDeclaration", + "scope": 7760, + "src": "23587:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7738, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23587:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7741, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23610:2:4", + "nodeType": "VariableDeclaration", + "scope": 7760, + "src": "23596:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7740, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23596:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7743, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23619:2:4", + "nodeType": "VariableDeclaration", + "scope": 7760, + "src": "23614:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7742, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23614:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7745, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23628:2:4", + "nodeType": "VariableDeclaration", + "scope": 7760, + "src": "23623:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7744, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23623:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "23586:45:4" + }, + "returnParameters": { + "id": 7747, + "nodeType": "ParameterList", + "parameters": [], + "src": "23646:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7783, + "nodeType": "FunctionDefinition", + "src": "23755:181:4", + "body": { + "id": 7782, + "nodeType": "Block", + "src": "23830:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c626f6f6c2c6164647265737329", + "id": 7774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23880:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_796f28a06ededa438107c0866560412d4d4337e29da4c7300f50c49a73c18829", + "typeString": "literal_string \"log(uint,string,bool,address)\"" + }, + "value": "log(uint,string,bool,address)" + }, + { + "id": 7775, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7762, + "src": "23913:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7776, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7764, + "src": "23917:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7777, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7766, + "src": "23921:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7778, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7768, + "src": "23925:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_796f28a06ededa438107c0866560412d4d4337e29da4c7300f50c49a73c18829", + "typeString": "literal_string \"log(uint,string,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7772, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23856:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23856:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23856:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7771, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "23840:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23840:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7781, + "nodeType": "ExpressionStatement", + "src": "23840:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23764:3:4", + "parameters": { + "id": 7769, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7762, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23773:2:4", + "nodeType": "VariableDeclaration", + "scope": 7783, + "src": "23768:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7761, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23768:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7764, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23791:2:4", + "nodeType": "VariableDeclaration", + "scope": 7783, + "src": "23777:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7763, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23777:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7766, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23800:2:4", + "nodeType": "VariableDeclaration", + "scope": 7783, + "src": "23795:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7765, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23795:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7768, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23812:2:4", + "nodeType": "VariableDeclaration", + "scope": 7783, + "src": "23804:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7767, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23804:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23767:48:4" + }, + "returnParameters": { + "id": 7770, + "nodeType": "ParameterList", + "parameters": [], + "src": "23830:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7806, + "nodeType": "FunctionDefinition", + "src": "23942:181:4", + "body": { + "id": 7805, + "nodeType": "Block", + "src": "24017:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c616464726573732c75696e7429", + "id": 7797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24067:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_98e7f3f3a2c39a91982b0a3ae7f29043579abd563fc10531c052f92c3317af43", + "typeString": "literal_string \"log(uint,string,address,uint)\"" + }, + "value": "log(uint,string,address,uint)" + }, + { + "id": 7798, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7785, + "src": "24100:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7799, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7787, + "src": "24104:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7800, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7789, + "src": "24108:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7801, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7791, + "src": "24112:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_98e7f3f3a2c39a91982b0a3ae7f29043579abd563fc10531c052f92c3317af43", + "typeString": "literal_string \"log(uint,string,address,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7795, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24043:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24043:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24043:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7794, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24027:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24027:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7804, + "nodeType": "ExpressionStatement", + "src": "24027:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23951:3:4", + "parameters": { + "id": 7792, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7785, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23960:2:4", + "nodeType": "VariableDeclaration", + "scope": 7806, + "src": "23955:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7784, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23955:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7787, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23978:2:4", + "nodeType": "VariableDeclaration", + "scope": 7806, + "src": "23964:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7786, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23964:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7789, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23990:2:4", + "nodeType": "VariableDeclaration", + "scope": 7806, + "src": "23982:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7788, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23982:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7791, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23999:2:4", + "nodeType": "VariableDeclaration", + "scope": 7806, + "src": "23994:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7790, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23994:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23954:48:4" + }, + "returnParameters": { + "id": 7793, + "nodeType": "ParameterList", + "parameters": [], + "src": "24017:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7829, + "nodeType": "FunctionDefinition", + "src": "24129:192:4", + "body": { + "id": 7828, + "nodeType": "Block", + "src": "24213:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c616464726573732c737472696e6729", + "id": 7820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24263:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f898577fdc87bf80b54b2b838f8b58bf5a74554c7beeb61b98f3c2b7d59f31e2", + "typeString": "literal_string \"log(uint,string,address,string)\"" + }, + "value": "log(uint,string,address,string)" + }, + { + "id": 7821, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7808, + "src": "24298:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7822, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7810, + "src": "24302:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7823, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7812, + "src": "24306:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7824, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7814, + "src": "24310:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f898577fdc87bf80b54b2b838f8b58bf5a74554c7beeb61b98f3c2b7d59f31e2", + "typeString": "literal_string \"log(uint,string,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7818, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24239:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7819, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24239:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24239:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7817, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24223:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24223:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7827, + "nodeType": "ExpressionStatement", + "src": "24223:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24138:3:4", + "parameters": { + "id": 7815, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7808, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24147:2:4", + "nodeType": "VariableDeclaration", + "scope": 7829, + "src": "24142:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7807, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24142:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7810, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24165:2:4", + "nodeType": "VariableDeclaration", + "scope": 7829, + "src": "24151:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24151:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7812, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24177:2:4", + "nodeType": "VariableDeclaration", + "scope": 7829, + "src": "24169:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7811, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24169:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7814, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24195:2:4", + "nodeType": "VariableDeclaration", + "scope": 7829, + "src": "24181:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7813, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24181:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "24141:57:4" + }, + "returnParameters": { + "id": 7816, + "nodeType": "ParameterList", + "parameters": [], + "src": "24213:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7852, + "nodeType": "FunctionDefinition", + "src": "24327:181:4", + "body": { + "id": 7851, + "nodeType": "Block", + "src": "24402:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c616464726573732c626f6f6c29", + "id": 7843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24452:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f93fff378483bab1a84a8ae346090ff91e793863821a5430c45153390c3262e1", + "typeString": "literal_string \"log(uint,string,address,bool)\"" + }, + "value": "log(uint,string,address,bool)" + }, + { + "id": 7844, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7831, + "src": "24485:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7845, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7833, + "src": "24489:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7846, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7835, + "src": "24493:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7847, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7837, + "src": "24497:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f93fff378483bab1a84a8ae346090ff91e793863821a5430c45153390c3262e1", + "typeString": "literal_string \"log(uint,string,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7841, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24428:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7842, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24428:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24428:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7840, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24412:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24412:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7850, + "nodeType": "ExpressionStatement", + "src": "24412:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24336:3:4", + "parameters": { + "id": 7838, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7831, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24345:2:4", + "nodeType": "VariableDeclaration", + "scope": 7852, + "src": "24340:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7830, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24340:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7833, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24363:2:4", + "nodeType": "VariableDeclaration", + "scope": 7852, + "src": "24349:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7832, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24349:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7835, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24375:2:4", + "nodeType": "VariableDeclaration", + "scope": 7852, + "src": "24367:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7834, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24367:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7837, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24384:2:4", + "nodeType": "VariableDeclaration", + "scope": 7852, + "src": "24379:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7836, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24379:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "24339:48:4" + }, + "returnParameters": { + "id": 7839, + "nodeType": "ParameterList", + "parameters": [], + "src": "24402:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7875, + "nodeType": "FunctionDefinition", + "src": "24514:187:4", + "body": { + "id": 7874, + "nodeType": "Block", + "src": "24592:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c737472696e672c616464726573732c6164647265737329", + "id": 7866, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24642:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7fa5458bb859a8b444c46f9915b7879afe7e200298580a00c5813ecf5c0a77cb", + "typeString": "literal_string \"log(uint,string,address,address)\"" + }, + "value": "log(uint,string,address,address)" + }, + { + "id": 7867, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7854, + "src": "24678:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7868, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7856, + "src": "24682:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7869, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7858, + "src": "24686:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 7870, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7860, + "src": "24690:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7fa5458bb859a8b444c46f9915b7879afe7e200298580a00c5813ecf5c0a77cb", + "typeString": "literal_string \"log(uint,string,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7864, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24618:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24618:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7871, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24618:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7863, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24602:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24602:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7873, + "nodeType": "ExpressionStatement", + "src": "24602:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24523:3:4", + "parameters": { + "id": 7861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7854, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24532:2:4", + "nodeType": "VariableDeclaration", + "scope": 7875, + "src": "24527:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7853, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24527:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7856, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24550:2:4", + "nodeType": "VariableDeclaration", + "scope": 7875, + "src": "24536:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7855, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24536:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7858, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24562:2:4", + "nodeType": "VariableDeclaration", + "scope": 7875, + "src": "24554:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7857, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24554:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7860, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24574:2:4", + "nodeType": "VariableDeclaration", + "scope": 7875, + "src": "24566:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7859, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24566:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24526:51:4" + }, + "returnParameters": { + "id": 7862, + "nodeType": "ParameterList", + "parameters": [], + "src": "24592:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7898, + "nodeType": "FunctionDefinition", + "src": "24707:164:4", + "body": { + "id": 7897, + "nodeType": "Block", + "src": "24770:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c75696e742c75696e7429", + "id": 7889, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24820:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_56828da42a6ecdc94480e6d223af96b676cdc4ca9a00b1d88a7646ef1e12541e", + "typeString": "literal_string \"log(uint,bool,uint,uint)\"" + }, + "value": "log(uint,bool,uint,uint)" + }, + { + "id": 7890, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7877, + "src": "24848:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7891, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7879, + "src": "24852:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7892, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7881, + "src": "24856:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7893, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7883, + "src": "24860:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_56828da42a6ecdc94480e6d223af96b676cdc4ca9a00b1d88a7646ef1e12541e", + "typeString": "literal_string \"log(uint,bool,uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7887, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24796:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7888, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24796:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24796:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7886, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24780:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24780:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7896, + "nodeType": "ExpressionStatement", + "src": "24780:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24716:3:4", + "parameters": { + "id": 7884, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7877, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24725:2:4", + "nodeType": "VariableDeclaration", + "scope": 7898, + "src": "24720:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7876, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24720:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7879, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24734:2:4", + "nodeType": "VariableDeclaration", + "scope": 7898, + "src": "24729:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7878, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24729:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7881, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24743:2:4", + "nodeType": "VariableDeclaration", + "scope": 7898, + "src": "24738:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7880, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24738:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7883, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24752:2:4", + "nodeType": "VariableDeclaration", + "scope": 7898, + "src": "24747:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7882, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24747:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24719:36:4" + }, + "returnParameters": { + "id": 7885, + "nodeType": "ParameterList", + "parameters": [], + "src": "24770:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7921, + "nodeType": "FunctionDefinition", + "src": "24877:175:4", + "body": { + "id": 7920, + "nodeType": "Block", + "src": "24949:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c75696e742c737472696e6729", + "id": 7912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24999:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e8ddbc56b4712607102717eb35a3ee6aa0309358d07a4257a282d4a44ceb2f63", + "typeString": "literal_string \"log(uint,bool,uint,string)\"" + }, + "value": "log(uint,bool,uint,string)" + }, + { + "id": 7913, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7900, + "src": "25029:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7914, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7902, + "src": "25033:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7915, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7904, + "src": "25037:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7916, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7906, + "src": "25041:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e8ddbc56b4712607102717eb35a3ee6aa0309358d07a4257a282d4a44ceb2f63", + "typeString": "literal_string \"log(uint,bool,uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 7910, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24975:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24975:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24975:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7909, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "24959:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24959:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7919, + "nodeType": "ExpressionStatement", + "src": "24959:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24886:3:4", + "parameters": { + "id": 7907, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7900, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24895:2:4", + "nodeType": "VariableDeclaration", + "scope": 7921, + "src": "24890:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7899, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24890:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7902, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24904:2:4", + "nodeType": "VariableDeclaration", + "scope": 7921, + "src": "24899:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7901, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24899:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7904, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24913:2:4", + "nodeType": "VariableDeclaration", + "scope": 7921, + "src": "24908:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7903, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "24908:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7906, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24931:2:4", + "nodeType": "VariableDeclaration", + "scope": 7921, + "src": "24917:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7905, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24917:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "24889:45:4" + }, + "returnParameters": { + "id": 7908, + "nodeType": "ParameterList", + "parameters": [], + "src": "24949:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7944, + "nodeType": "FunctionDefinition", + "src": "25058:164:4", + "body": { + "id": 7943, + "nodeType": "Block", + "src": "25121:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c75696e742c626f6f6c29", + "id": 7935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25171:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2abc4fdef6f35f3785755f2ca3a26416b52c0c4c5ad8b27342fc84a56532f2f", + "typeString": "literal_string \"log(uint,bool,uint,bool)\"" + }, + "value": "log(uint,bool,uint,bool)" + }, + { + "id": 7936, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7923, + "src": "25199:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7937, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7925, + "src": "25203:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7938, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7927, + "src": "25207:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7939, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7929, + "src": "25211:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2abc4fdef6f35f3785755f2ca3a26416b52c0c4c5ad8b27342fc84a56532f2f", + "typeString": "literal_string \"log(uint,bool,uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 7933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25147:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25147:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25147:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7932, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "25131:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25131:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7942, + "nodeType": "ExpressionStatement", + "src": "25131:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25067:3:4", + "parameters": { + "id": 7930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7923, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25076:2:4", + "nodeType": "VariableDeclaration", + "scope": 7944, + "src": "25071:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7922, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25071:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7925, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25085:2:4", + "nodeType": "VariableDeclaration", + "scope": 7944, + "src": "25080:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7924, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25080:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7927, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25094:2:4", + "nodeType": "VariableDeclaration", + "scope": 7944, + "src": "25089:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7926, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25089:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7929, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25103:2:4", + "nodeType": "VariableDeclaration", + "scope": 7944, + "src": "25098:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7928, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25098:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "25070:36:4" + }, + "returnParameters": { + "id": 7931, + "nodeType": "ParameterList", + "parameters": [], + "src": "25121:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7967, + "nodeType": "FunctionDefinition", + "src": "25228:170:4", + "body": { + "id": 7966, + "nodeType": "Block", + "src": "25294:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c75696e742c6164647265737329", + "id": 7958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25344:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f40058ea8927b23c60661eeb28f54d3ce10f5f6cdd8e3ce445d34409ceb50a3", + "typeString": "literal_string \"log(uint,bool,uint,address)\"" + }, + "value": "log(uint,bool,uint,address)" + }, + { + "id": 7959, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7946, + "src": "25375:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7960, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7948, + "src": "25379:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7961, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7950, + "src": "25383:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7962, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7952, + "src": "25387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f40058ea8927b23c60661eeb28f54d3ce10f5f6cdd8e3ce445d34409ceb50a3", + "typeString": "literal_string \"log(uint,bool,uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 7956, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25320:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25320:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7963, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25320:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7955, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "25304:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25304:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7965, + "nodeType": "ExpressionStatement", + "src": "25304:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25237:3:4", + "parameters": { + "id": 7953, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7946, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25246:2:4", + "nodeType": "VariableDeclaration", + "scope": 7967, + "src": "25241:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7945, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25241:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7948, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25255:2:4", + "nodeType": "VariableDeclaration", + "scope": 7967, + "src": "25250:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7947, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25250:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7950, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25264:2:4", + "nodeType": "VariableDeclaration", + "scope": 7967, + "src": "25259:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7949, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25259:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7952, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25276:2:4", + "nodeType": "VariableDeclaration", + "scope": 7967, + "src": "25268:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 7951, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25268:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "25240:39:4" + }, + "returnParameters": { + "id": 7954, + "nodeType": "ParameterList", + "parameters": [], + "src": "25294:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 7990, + "nodeType": "FunctionDefinition", + "src": "25404:175:4", + "body": { + "id": 7989, + "nodeType": "Block", + "src": "25476:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c737472696e672c75696e7429", + "id": 7981, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25526:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_915fdb28841654f5e04882ad0aa4f5de28bd90db1a700dae8b1eb5e67e36a012", + "typeString": "literal_string \"log(uint,bool,string,uint)\"" + }, + "value": "log(uint,bool,string,uint)" + }, + { + "id": 7982, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7969, + "src": "25556:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 7983, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7971, + "src": "25560:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 7984, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7973, + "src": "25564:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 7985, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7975, + "src": "25568:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_915fdb28841654f5e04882ad0aa4f5de28bd90db1a700dae8b1eb5e67e36a012", + "typeString": "literal_string \"log(uint,bool,string,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 7979, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25502:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 7980, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25502:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 7986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25502:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 7978, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "25486:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 7987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25486:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 7988, + "nodeType": "ExpressionStatement", + "src": "25486:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25413:3:4", + "parameters": { + "id": 7976, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7969, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25422:2:4", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "25417:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7968, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25417:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7971, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25431:2:4", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "25426:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7970, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25426:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7973, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25449:2:4", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "25435:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7972, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25435:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7975, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25458:2:4", + "nodeType": "VariableDeclaration", + "scope": 7990, + "src": "25453:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7974, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25453:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25416:45:4" + }, + "returnParameters": { + "id": 7977, + "nodeType": "ParameterList", + "parameters": [], + "src": "25476:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8013, + "nodeType": "FunctionDefinition", + "src": "25585:186:4", + "body": { + "id": 8012, + "nodeType": "Block", + "src": "25666:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c737472696e672c737472696e6729", + "id": 8004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25716:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a433fcfd538cd0e077747fbb2c5a6453c1804c6ad4af653273e0d14ab4a0566a", + "typeString": "literal_string \"log(uint,bool,string,string)\"" + }, + "value": "log(uint,bool,string,string)" + }, + { + "id": 8005, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7992, + "src": "25748:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8006, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7994, + "src": "25752:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8007, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7996, + "src": "25756:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8008, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 7998, + "src": "25760:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a433fcfd538cd0e077747fbb2c5a6453c1804c6ad4af653273e0d14ab4a0566a", + "typeString": "literal_string \"log(uint,bool,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8002, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25692:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25692:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8009, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25692:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8001, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "25676:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25676:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8011, + "nodeType": "ExpressionStatement", + "src": "25676:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25594:3:4", + "parameters": { + "id": 7999, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7992, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25603:2:4", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "25598:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 7991, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25598:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7994, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25612:2:4", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "25607:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 7993, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25607:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7996, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25630:2:4", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "25616:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7995, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25616:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7998, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25648:2:4", + "nodeType": "VariableDeclaration", + "scope": 8013, + "src": "25634:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 7997, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25634:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "25597:54:4" + }, + "returnParameters": { + "id": 8000, + "nodeType": "ParameterList", + "parameters": [], + "src": "25666:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8036, + "nodeType": "FunctionDefinition", + "src": "25777:175:4", + "body": { + "id": 8035, + "nodeType": "Block", + "src": "25849:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c737472696e672c626f6f6c29", + "id": 8027, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25899:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_346eb8c74221bcb2c0a69b8dde628b7e6175c4f090782c8f07996b251212e22d", + "typeString": "literal_string \"log(uint,bool,string,bool)\"" + }, + "value": "log(uint,bool,string,bool)" + }, + { + "id": 8028, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8015, + "src": "25929:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8029, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8017, + "src": "25933:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8030, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8019, + "src": "25937:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8031, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8021, + "src": "25941:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_346eb8c74221bcb2c0a69b8dde628b7e6175c4f090782c8f07996b251212e22d", + "typeString": "literal_string \"log(uint,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8025, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25875:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8026, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25875:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25875:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8024, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "25859:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25859:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8034, + "nodeType": "ExpressionStatement", + "src": "25859:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25786:3:4", + "parameters": { + "id": 8022, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8015, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25795:2:4", + "nodeType": "VariableDeclaration", + "scope": 8036, + "src": "25790:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8014, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25790:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8017, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25804:2:4", + "nodeType": "VariableDeclaration", + "scope": 8036, + "src": "25799:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8016, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25799:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8019, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25822:2:4", + "nodeType": "VariableDeclaration", + "scope": 8036, + "src": "25808:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8018, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25808:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8021, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25831:2:4", + "nodeType": "VariableDeclaration", + "scope": 8036, + "src": "25826:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8020, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25826:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "25789:45:4" + }, + "returnParameters": { + "id": 8023, + "nodeType": "ParameterList", + "parameters": [], + "src": "25849:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8059, + "nodeType": "FunctionDefinition", + "src": "25958:181:4", + "body": { + "id": 8058, + "nodeType": "Block", + "src": "26033:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c737472696e672c6164647265737329", + "id": 8050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26083:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_496e2bb45f5cdd3680c3e807c53955b9de163e898851c7844433c0a9c91dcd9d", + "typeString": "literal_string \"log(uint,bool,string,address)\"" + }, + "value": "log(uint,bool,string,address)" + }, + { + "id": 8051, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8038, + "src": "26116:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8052, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8040, + "src": "26120:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8053, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8042, + "src": "26124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8054, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8044, + "src": "26128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_496e2bb45f5cdd3680c3e807c53955b9de163e898851c7844433c0a9c91dcd9d", + "typeString": "literal_string \"log(uint,bool,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8048, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26059:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8049, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26059:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26059:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8047, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26043:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26043:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8057, + "nodeType": "ExpressionStatement", + "src": "26043:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25967:3:4", + "parameters": { + "id": 8045, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8038, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25976:2:4", + "nodeType": "VariableDeclaration", + "scope": 8059, + "src": "25971:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8037, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "25971:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8040, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25985:2:4", + "nodeType": "VariableDeclaration", + "scope": 8059, + "src": "25980:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8039, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25980:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8042, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26003:2:4", + "nodeType": "VariableDeclaration", + "scope": 8059, + "src": "25989:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8041, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25989:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8044, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26015:2:4", + "nodeType": "VariableDeclaration", + "scope": 8059, + "src": "26007:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8043, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26007:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "25970:48:4" + }, + "returnParameters": { + "id": 8046, + "nodeType": "ParameterList", + "parameters": [], + "src": "26033:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8082, + "nodeType": "FunctionDefinition", + "src": "26145:164:4", + "body": { + "id": 8081, + "nodeType": "Block", + "src": "26208:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c626f6f6c2c75696e7429", + "id": 8073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26258:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bd25ad5987e2f3e90d5ff2c9e0dad802782e9040e45e823722ccf598278cf7ed", + "typeString": "literal_string \"log(uint,bool,bool,uint)\"" + }, + "value": "log(uint,bool,bool,uint)" + }, + { + "id": 8074, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8061, + "src": "26286:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8075, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8063, + "src": "26290:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8076, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8065, + "src": "26294:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8077, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8067, + "src": "26298:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bd25ad5987e2f3e90d5ff2c9e0dad802782e9040e45e823722ccf598278cf7ed", + "typeString": "literal_string \"log(uint,bool,bool,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8071, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26234:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8072, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26234:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8078, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26234:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8070, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26218:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26218:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8080, + "nodeType": "ExpressionStatement", + "src": "26218:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26154:3:4", + "parameters": { + "id": 8068, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8061, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26163:2:4", + "nodeType": "VariableDeclaration", + "scope": 8082, + "src": "26158:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8060, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26158:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8063, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26172:2:4", + "nodeType": "VariableDeclaration", + "scope": 8082, + "src": "26167:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8062, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26167:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8065, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26181:2:4", + "nodeType": "VariableDeclaration", + "scope": 8082, + "src": "26176:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8064, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26176:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8067, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26190:2:4", + "nodeType": "VariableDeclaration", + "scope": 8082, + "src": "26185:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8066, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26185:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "26157:36:4" + }, + "returnParameters": { + "id": 8069, + "nodeType": "ParameterList", + "parameters": [], + "src": "26208:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8105, + "nodeType": "FunctionDefinition", + "src": "26315:175:4", + "body": { + "id": 8104, + "nodeType": "Block", + "src": "26387:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c626f6f6c2c737472696e6729", + "id": 8096, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26437:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_318ae59b506d4efe5cd02b34be9f24009f0134ab1136defc4789a09e425a8861", + "typeString": "literal_string \"log(uint,bool,bool,string)\"" + }, + "value": "log(uint,bool,bool,string)" + }, + { + "id": 8097, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8084, + "src": "26467:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8098, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8086, + "src": "26471:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8099, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8088, + "src": "26475:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8100, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8090, + "src": "26479:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_318ae59b506d4efe5cd02b34be9f24009f0134ab1136defc4789a09e425a8861", + "typeString": "literal_string \"log(uint,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8094, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26413:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8095, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26413:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26413:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8093, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26397:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26397:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8103, + "nodeType": "ExpressionStatement", + "src": "26397:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26324:3:4", + "parameters": { + "id": 8091, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8084, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26333:2:4", + "nodeType": "VariableDeclaration", + "scope": 8105, + "src": "26328:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8083, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26328:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8086, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26342:2:4", + "nodeType": "VariableDeclaration", + "scope": 8105, + "src": "26337:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8085, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26337:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8088, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26351:2:4", + "nodeType": "VariableDeclaration", + "scope": 8105, + "src": "26346:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8087, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26346:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8090, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26369:2:4", + "nodeType": "VariableDeclaration", + "scope": 8105, + "src": "26355:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8089, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26355:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "26327:45:4" + }, + "returnParameters": { + "id": 8092, + "nodeType": "ParameterList", + "parameters": [], + "src": "26387:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8128, + "nodeType": "FunctionDefinition", + "src": "26496:164:4", + "body": { + "id": 8127, + "nodeType": "Block", + "src": "26559:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 8119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26609:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e6c5315e6998332ba87ae2545bc72447c94349a51e999446a98bfab04167b32", + "typeString": "literal_string \"log(uint,bool,bool,bool)\"" + }, + "value": "log(uint,bool,bool,bool)" + }, + { + "id": 8120, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8107, + "src": "26637:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8121, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8109, + "src": "26641:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8122, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8111, + "src": "26645:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8123, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8113, + "src": "26649:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e6c5315e6998332ba87ae2545bc72447c94349a51e999446a98bfab04167b32", + "typeString": "literal_string \"log(uint,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8117, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26585:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26585:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26585:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8116, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26569:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26569:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8126, + "nodeType": "ExpressionStatement", + "src": "26569:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26505:3:4", + "parameters": { + "id": 8114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8107, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26514:2:4", + "nodeType": "VariableDeclaration", + "scope": 8128, + "src": "26509:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8106, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26509:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8109, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26523:2:4", + "nodeType": "VariableDeclaration", + "scope": 8128, + "src": "26518:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8108, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26518:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8111, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26532:2:4", + "nodeType": "VariableDeclaration", + "scope": 8128, + "src": "26527:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8110, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26527:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8113, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26541:2:4", + "nodeType": "VariableDeclaration", + "scope": 8128, + "src": "26536:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8112, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26536:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "26508:36:4" + }, + "returnParameters": { + "id": 8115, + "nodeType": "ParameterList", + "parameters": [], + "src": "26559:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8151, + "nodeType": "FunctionDefinition", + "src": "26666:170:4", + "body": { + "id": 8150, + "nodeType": "Block", + "src": "26732:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c626f6f6c2c6164647265737329", + "id": 8142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26782:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5306225d3f6a0c340e12a634d8571b24a659d0fdcb96dd45e3bd062feb68355b", + "typeString": "literal_string \"log(uint,bool,bool,address)\"" + }, + "value": "log(uint,bool,bool,address)" + }, + { + "id": 8143, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8130, + "src": "26813:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8144, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8132, + "src": "26817:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8145, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8134, + "src": "26821:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8146, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8136, + "src": "26825:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5306225d3f6a0c340e12a634d8571b24a659d0fdcb96dd45e3bd062feb68355b", + "typeString": "literal_string \"log(uint,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8140, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26758:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26758:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8147, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26758:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8139, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26742:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26742:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8149, + "nodeType": "ExpressionStatement", + "src": "26742:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26675:3:4", + "parameters": { + "id": 8137, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8130, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26684:2:4", + "nodeType": "VariableDeclaration", + "scope": 8151, + "src": "26679:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8129, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26679:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8132, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26693:2:4", + "nodeType": "VariableDeclaration", + "scope": 8151, + "src": "26688:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8131, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26688:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8134, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26702:2:4", + "nodeType": "VariableDeclaration", + "scope": 8151, + "src": "26697:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8133, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26697:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8136, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26714:2:4", + "nodeType": "VariableDeclaration", + "scope": 8151, + "src": "26706:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8135, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26706:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "26678:39:4" + }, + "returnParameters": { + "id": 8138, + "nodeType": "ParameterList", + "parameters": [], + "src": "26732:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8174, + "nodeType": "FunctionDefinition", + "src": "26842:170:4", + "body": { + "id": 8173, + "nodeType": "Block", + "src": "26908:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c616464726573732c75696e7429", + "id": 8165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26958:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41b5ef3bc57cb6072d9bbab757f04e68fb78a6a8b29741a7b963761abce32fb1", + "typeString": "literal_string \"log(uint,bool,address,uint)\"" + }, + "value": "log(uint,bool,address,uint)" + }, + { + "id": 8166, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8153, + "src": "26989:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8167, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8155, + "src": "26993:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8168, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8157, + "src": "26997:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8169, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8159, + "src": "27001:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41b5ef3bc57cb6072d9bbab757f04e68fb78a6a8b29741a7b963761abce32fb1", + "typeString": "literal_string \"log(uint,bool,address,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8163, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26934:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8164, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26934:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26934:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8162, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "26918:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26918:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8172, + "nodeType": "ExpressionStatement", + "src": "26918:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26851:3:4", + "parameters": { + "id": 8160, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8153, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26860:2:4", + "nodeType": "VariableDeclaration", + "scope": 8174, + "src": "26855:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8152, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26855:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8155, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26869:2:4", + "nodeType": "VariableDeclaration", + "scope": 8174, + "src": "26864:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8154, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26864:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8157, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26881:2:4", + "nodeType": "VariableDeclaration", + "scope": 8174, + "src": "26873:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8156, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26873:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8159, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26890:2:4", + "nodeType": "VariableDeclaration", + "scope": 8174, + "src": "26885:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8158, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "26885:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "26854:39:4" + }, + "returnParameters": { + "id": 8161, + "nodeType": "ParameterList", + "parameters": [], + "src": "26908:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8197, + "nodeType": "FunctionDefinition", + "src": "27018:181:4", + "body": { + "id": 8196, + "nodeType": "Block", + "src": "27093:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c616464726573732c737472696e6729", + "id": 8188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27143:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a230761e3811ae33e11d91e6667cf79e7e0ce8023ec276bdd69859f68587933c", + "typeString": "literal_string \"log(uint,bool,address,string)\"" + }, + "value": "log(uint,bool,address,string)" + }, + { + "id": 8189, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8176, + "src": "27176:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8190, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8178, + "src": "27180:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8191, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8180, + "src": "27184:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8192, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8182, + "src": "27188:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a230761e3811ae33e11d91e6667cf79e7e0ce8023ec276bdd69859f68587933c", + "typeString": "literal_string \"log(uint,bool,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8186, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27119:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8187, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27119:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27119:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8185, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "27103:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27103:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8195, + "nodeType": "ExpressionStatement", + "src": "27103:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27027:3:4", + "parameters": { + "id": 8183, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8176, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27036:2:4", + "nodeType": "VariableDeclaration", + "scope": 8197, + "src": "27031:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8175, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27031:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8178, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27045:2:4", + "nodeType": "VariableDeclaration", + "scope": 8197, + "src": "27040:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8177, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27040:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8180, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27057:2:4", + "nodeType": "VariableDeclaration", + "scope": 8197, + "src": "27049:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8179, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27049:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8182, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27075:2:4", + "nodeType": "VariableDeclaration", + "scope": 8197, + "src": "27061:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8181, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27061:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "27030:48:4" + }, + "returnParameters": { + "id": 8184, + "nodeType": "ParameterList", + "parameters": [], + "src": "27093:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8220, + "nodeType": "FunctionDefinition", + "src": "27205:170:4", + "body": { + "id": 8219, + "nodeType": "Block", + "src": "27271:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c616464726573732c626f6f6c29", + "id": 8211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27321:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91fb124272873b32f25c28f6935451e3d46ffd78ac8ebaaa0e096a7942db5445", + "typeString": "literal_string \"log(uint,bool,address,bool)\"" + }, + "value": "log(uint,bool,address,bool)" + }, + { + "id": 8212, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8199, + "src": "27352:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8213, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8201, + "src": "27356:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8214, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8203, + "src": "27360:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8215, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8205, + "src": "27364:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91fb124272873b32f25c28f6935451e3d46ffd78ac8ebaaa0e096a7942db5445", + "typeString": "literal_string \"log(uint,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27297:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27297:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8216, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27297:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8208, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "27281:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27281:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8218, + "nodeType": "ExpressionStatement", + "src": "27281:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27214:3:4", + "parameters": { + "id": 8206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8199, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27223:2:4", + "nodeType": "VariableDeclaration", + "scope": 8220, + "src": "27218:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8198, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27218:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8201, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27232:2:4", + "nodeType": "VariableDeclaration", + "scope": 8220, + "src": "27227:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8200, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27227:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8203, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27244:2:4", + "nodeType": "VariableDeclaration", + "scope": 8220, + "src": "27236:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8202, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27236:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8205, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27253:2:4", + "nodeType": "VariableDeclaration", + "scope": 8220, + "src": "27248:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8204, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27248:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27217:39:4" + }, + "returnParameters": { + "id": 8207, + "nodeType": "ParameterList", + "parameters": [], + "src": "27271:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8243, + "nodeType": "FunctionDefinition", + "src": "27381:176:4", + "body": { + "id": 8242, + "nodeType": "Block", + "src": "27450:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c626f6f6c2c616464726573732c6164647265737329", + "id": 8234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27500:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_86edc10cd85187c3b3f180e68e570c794e768808cdffe5158045d6f841ae33f2", + "typeString": "literal_string \"log(uint,bool,address,address)\"" + }, + "value": "log(uint,bool,address,address)" + }, + { + "id": 8235, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8222, + "src": "27534:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8236, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8224, + "src": "27538:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8237, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8226, + "src": "27542:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8238, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8228, + "src": "27546:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_86edc10cd85187c3b3f180e68e570c794e768808cdffe5158045d6f841ae33f2", + "typeString": "literal_string \"log(uint,bool,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8232, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27476:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8233, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27476:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27476:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8231, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "27460:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8240, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27460:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8241, + "nodeType": "ExpressionStatement", + "src": "27460:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27390:3:4", + "parameters": { + "id": 8229, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8222, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27399:2:4", + "nodeType": "VariableDeclaration", + "scope": 8243, + "src": "27394:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8221, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27394:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8224, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27408:2:4", + "nodeType": "VariableDeclaration", + "scope": 8243, + "src": "27403:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8223, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27403:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8226, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27420:2:4", + "nodeType": "VariableDeclaration", + "scope": 8243, + "src": "27412:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8225, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27412:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8228, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27432:2:4", + "nodeType": "VariableDeclaration", + "scope": 8243, + "src": "27424:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27424:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "27393:42:4" + }, + "returnParameters": { + "id": 8230, + "nodeType": "ParameterList", + "parameters": [], + "src": "27450:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8266, + "nodeType": "FunctionDefinition", + "src": "27563:170:4", + "body": { + "id": 8265, + "nodeType": "Block", + "src": "27629:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c75696e742c75696e7429", + "id": 8257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27679:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca9a3eb4a61979ee5cc1814fa8df2504ab7831148afaa3d4c17622578eab7412", + "typeString": "literal_string \"log(uint,address,uint,uint)\"" + }, + "value": "log(uint,address,uint,uint)" + }, + { + "id": 8258, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8245, + "src": "27710:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8259, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8247, + "src": "27714:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8260, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8249, + "src": "27718:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8261, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8251, + "src": "27722:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca9a3eb4a61979ee5cc1814fa8df2504ab7831148afaa3d4c17622578eab7412", + "typeString": "literal_string \"log(uint,address,uint,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8255, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27655:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27655:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8262, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27655:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8254, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "27639:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27639:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8264, + "nodeType": "ExpressionStatement", + "src": "27639:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27572:3:4", + "parameters": { + "id": 8252, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8245, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27581:2:4", + "nodeType": "VariableDeclaration", + "scope": 8266, + "src": "27576:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8244, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27576:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8247, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27593:2:4", + "nodeType": "VariableDeclaration", + "scope": 8266, + "src": "27585:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27585:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8249, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27602:2:4", + "nodeType": "VariableDeclaration", + "scope": 8266, + "src": "27597:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8248, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27597:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8251, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27611:2:4", + "nodeType": "VariableDeclaration", + "scope": 8266, + "src": "27606:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8250, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27606:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "27575:39:4" + }, + "returnParameters": { + "id": 8253, + "nodeType": "ParameterList", + "parameters": [], + "src": "27629:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8289, + "nodeType": "FunctionDefinition", + "src": "27739:181:4", + "body": { + "id": 8288, + "nodeType": "Block", + "src": "27814:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c75696e742c737472696e6729", + "id": 8280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27864:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3ed3bd282d1a27244fa4d3668aff783448c1a1864ff920057fa9f1c8144bb10b", + "typeString": "literal_string \"log(uint,address,uint,string)\"" + }, + "value": "log(uint,address,uint,string)" + }, + { + "id": 8281, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8268, + "src": "27897:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8282, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8270, + "src": "27901:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8283, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8272, + "src": "27905:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8284, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8274, + "src": "27909:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3ed3bd282d1a27244fa4d3668aff783448c1a1864ff920057fa9f1c8144bb10b", + "typeString": "literal_string \"log(uint,address,uint,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8278, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27840:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27840:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27840:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8277, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "27824:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27824:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8287, + "nodeType": "ExpressionStatement", + "src": "27824:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27748:3:4", + "parameters": { + "id": 8275, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8268, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27757:2:4", + "nodeType": "VariableDeclaration", + "scope": 8289, + "src": "27752:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8267, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27752:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8270, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27769:2:4", + "nodeType": "VariableDeclaration", + "scope": 8289, + "src": "27761:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27761:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8272, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27778:2:4", + "nodeType": "VariableDeclaration", + "scope": 8289, + "src": "27773:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8271, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27773:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8274, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27796:2:4", + "nodeType": "VariableDeclaration", + "scope": 8289, + "src": "27782:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8273, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27782:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "27751:48:4" + }, + "returnParameters": { + "id": 8276, + "nodeType": "ParameterList", + "parameters": [], + "src": "27814:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8312, + "nodeType": "FunctionDefinition", + "src": "27926:170:4", + "body": { + "id": 8311, + "nodeType": "Block", + "src": "27992:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c75696e742c626f6f6c29", + "id": 8303, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28042:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_19f67369d42bc0582d07ae744348ad46b79a6c16f354e3d3fb3c6bff2ecfa9f8", + "typeString": "literal_string \"log(uint,address,uint,bool)\"" + }, + "value": "log(uint,address,uint,bool)" + }, + { + "id": 8304, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8291, + "src": "28073:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8305, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8293, + "src": "28077:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8306, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8295, + "src": "28081:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8307, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8297, + "src": "28085:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_19f67369d42bc0582d07ae744348ad46b79a6c16f354e3d3fb3c6bff2ecfa9f8", + "typeString": "literal_string \"log(uint,address,uint,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8301, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28018:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8302, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28018:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28018:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8300, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28002:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8309, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28002:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8310, + "nodeType": "ExpressionStatement", + "src": "28002:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27935:3:4", + "parameters": { + "id": 8298, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8291, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27944:2:4", + "nodeType": "VariableDeclaration", + "scope": 8312, + "src": "27939:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8290, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27939:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8293, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27956:2:4", + "nodeType": "VariableDeclaration", + "scope": 8312, + "src": "27948:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8292, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27948:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8295, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27965:2:4", + "nodeType": "VariableDeclaration", + "scope": 8312, + "src": "27960:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8294, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "27960:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8297, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27974:2:4", + "nodeType": "VariableDeclaration", + "scope": 8312, + "src": "27969:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8296, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27969:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27938:39:4" + }, + "returnParameters": { + "id": 8299, + "nodeType": "ParameterList", + "parameters": [], + "src": "27992:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8335, + "nodeType": "FunctionDefinition", + "src": "28102:176:4", + "body": { + "id": 8334, + "nodeType": "Block", + "src": "28171:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c75696e742c6164647265737329", + "id": 8326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28221:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fdb2ecd415c75df8f66285a054607fa1335126fb1d8930dfc21744a3de7298e3", + "typeString": "literal_string \"log(uint,address,uint,address)\"" + }, + "value": "log(uint,address,uint,address)" + }, + { + "id": 8327, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8314, + "src": "28255:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8328, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8316, + "src": "28259:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8329, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8318, + "src": "28263:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8330, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8320, + "src": "28267:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fdb2ecd415c75df8f66285a054607fa1335126fb1d8930dfc21744a3de7298e3", + "typeString": "literal_string \"log(uint,address,uint,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8324, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28197:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8325, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28197:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28197:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8323, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28181:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28181:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8333, + "nodeType": "ExpressionStatement", + "src": "28181:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28111:3:4", + "parameters": { + "id": 8321, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8314, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28120:2:4", + "nodeType": "VariableDeclaration", + "scope": 8335, + "src": "28115:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8313, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28115:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8316, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28132:2:4", + "nodeType": "VariableDeclaration", + "scope": 8335, + "src": "28124:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28124:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8318, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28141:2:4", + "nodeType": "VariableDeclaration", + "scope": 8335, + "src": "28136:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8317, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28136:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8320, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28153:2:4", + "nodeType": "VariableDeclaration", + "scope": 8335, + "src": "28145:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8319, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28145:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "28114:42:4" + }, + "returnParameters": { + "id": 8322, + "nodeType": "ParameterList", + "parameters": [], + "src": "28171:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8358, + "nodeType": "FunctionDefinition", + "src": "28284:181:4", + "body": { + "id": 8357, + "nodeType": "Block", + "src": "28359:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c737472696e672c75696e7429", + "id": 8349, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28409:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0c414e8ba2ea65b865dd0bf68b2357e81261b47f237c68a4a8a63051bbef2eb", + "typeString": "literal_string \"log(uint,address,string,uint)\"" + }, + "value": "log(uint,address,string,uint)" + }, + { + "id": 8350, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8337, + "src": "28442:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8351, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8339, + "src": "28446:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8352, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8341, + "src": "28450:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8353, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8343, + "src": "28454:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0c414e8ba2ea65b865dd0bf68b2357e81261b47f237c68a4a8a63051bbef2eb", + "typeString": "literal_string \"log(uint,address,string,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8347, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28385:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8348, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28385:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8354, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28385:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8346, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28369:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28369:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8356, + "nodeType": "ExpressionStatement", + "src": "28369:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28293:3:4", + "parameters": { + "id": 8344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8337, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28302:2:4", + "nodeType": "VariableDeclaration", + "scope": 8358, + "src": "28297:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8336, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28297:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8339, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28314:2:4", + "nodeType": "VariableDeclaration", + "scope": 8358, + "src": "28306:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8338, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28306:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8341, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28332:2:4", + "nodeType": "VariableDeclaration", + "scope": 8358, + "src": "28318:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8340, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28318:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8343, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28341:2:4", + "nodeType": "VariableDeclaration", + "scope": 8358, + "src": "28336:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8342, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28336:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "28296:48:4" + }, + "returnParameters": { + "id": 8345, + "nodeType": "ParameterList", + "parameters": [], + "src": "28359:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8381, + "nodeType": "FunctionDefinition", + "src": "28471:192:4", + "body": { + "id": 8380, + "nodeType": "Block", + "src": "28555:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c737472696e672c737472696e6729", + "id": 8372, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28605:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8d778624e1d83269ce0415864bb54677b540f778c6b8503cf9035bc7517326f1", + "typeString": "literal_string \"log(uint,address,string,string)\"" + }, + "value": "log(uint,address,string,string)" + }, + { + "id": 8373, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8360, + "src": "28640:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8374, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8362, + "src": "28644:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8375, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8364, + "src": "28648:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8376, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8366, + "src": "28652:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8d778624e1d83269ce0415864bb54677b540f778c6b8503cf9035bc7517326f1", + "typeString": "literal_string \"log(uint,address,string,string)\"" + }, + { + "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" + } + ], + "expression": { + "id": 8370, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28581:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8371, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28581:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28581:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8369, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28565:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28565:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8379, + "nodeType": "ExpressionStatement", + "src": "28565:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28480:3:4", + "parameters": { + "id": 8367, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8360, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28489:2:4", + "nodeType": "VariableDeclaration", + "scope": 8381, + "src": "28484:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8359, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28484:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8362, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28501:2:4", + "nodeType": "VariableDeclaration", + "scope": 8381, + "src": "28493:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28493:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8364, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28519:2:4", + "nodeType": "VariableDeclaration", + "scope": 8381, + "src": "28505:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8363, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28505:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8366, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28537:2:4", + "nodeType": "VariableDeclaration", + "scope": 8381, + "src": "28523:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8365, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28523:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "28483:57:4" + }, + "returnParameters": { + "id": 8368, + "nodeType": "ParameterList", + "parameters": [], + "src": "28555:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8404, + "nodeType": "FunctionDefinition", + "src": "28669:181:4", + "body": { + "id": 8403, + "nodeType": "Block", + "src": "28744:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c737472696e672c626f6f6c29", + "id": 8395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28794:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_22a479a660b74b7598155f369ed227a5a93527fbdb04ff6f78fbf35fa23aacbf", + "typeString": "literal_string \"log(uint,address,string,bool)\"" + }, + "value": "log(uint,address,string,bool)" + }, + { + "id": 8396, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8383, + "src": "28827:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8397, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8385, + "src": "28831:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8398, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8387, + "src": "28835:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8399, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8389, + "src": "28839:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_22a479a660b74b7598155f369ed227a5a93527fbdb04ff6f78fbf35fa23aacbf", + "typeString": "literal_string \"log(uint,address,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8393, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28770:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28770:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28770:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8392, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28754:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28754:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8402, + "nodeType": "ExpressionStatement", + "src": "28754:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28678:3:4", + "parameters": { + "id": 8390, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8383, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28687:2:4", + "nodeType": "VariableDeclaration", + "scope": 8404, + "src": "28682:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8382, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28682:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8385, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28699:2:4", + "nodeType": "VariableDeclaration", + "scope": 8404, + "src": "28691:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8384, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28691:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8387, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28717:2:4", + "nodeType": "VariableDeclaration", + "scope": 8404, + "src": "28703:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8386, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28703:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8389, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28726:2:4", + "nodeType": "VariableDeclaration", + "scope": 8404, + "src": "28721:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8388, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28721:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28681:48:4" + }, + "returnParameters": { + "id": 8391, + "nodeType": "ParameterList", + "parameters": [], + "src": "28744:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8427, + "nodeType": "FunctionDefinition", + "src": "28856:187:4", + "body": { + "id": 8426, + "nodeType": "Block", + "src": "28934:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c737472696e672c6164647265737329", + "id": 8418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28984:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cbe58efddc067d74914c3479914810966ae688ac66ca2bbcae69cd9d0395796f", + "typeString": "literal_string \"log(uint,address,string,address)\"" + }, + "value": "log(uint,address,string,address)" + }, + { + "id": 8419, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8406, + "src": "29020:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8420, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8408, + "src": "29024:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8421, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8410, + "src": "29028:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8422, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8412, + "src": "29032:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cbe58efddc067d74914c3479914810966ae688ac66ca2bbcae69cd9d0395796f", + "typeString": "literal_string \"log(uint,address,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8416, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28960:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8417, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28960:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28960:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8415, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "28944:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28944:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8425, + "nodeType": "ExpressionStatement", + "src": "28944:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28865:3:4", + "parameters": { + "id": 8413, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8406, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28874:2:4", + "nodeType": "VariableDeclaration", + "scope": 8427, + "src": "28869:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8405, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "28869:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8408, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28886:2:4", + "nodeType": "VariableDeclaration", + "scope": 8427, + "src": "28878:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8407, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28878:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8410, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28904:2:4", + "nodeType": "VariableDeclaration", + "scope": 8427, + "src": "28890:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8409, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28890:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8412, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28916:2:4", + "nodeType": "VariableDeclaration", + "scope": 8427, + "src": "28908:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8411, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28908:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "28868:51:4" + }, + "returnParameters": { + "id": 8414, + "nodeType": "ParameterList", + "parameters": [], + "src": "28934:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8450, + "nodeType": "FunctionDefinition", + "src": "29049:170:4", + "body": { + "id": 8449, + "nodeType": "Block", + "src": "29115:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c626f6f6c2c75696e7429", + "id": 8441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29165:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7b08e8ebd6be8a04c54551194ba5143f1a555d43fe60d53843383a9915eeccb2", + "typeString": "literal_string \"log(uint,address,bool,uint)\"" + }, + "value": "log(uint,address,bool,uint)" + }, + { + "id": 8442, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8429, + "src": "29196:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8443, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8431, + "src": "29200:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8444, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8433, + "src": "29204:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8445, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8435, + "src": "29208:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7b08e8ebd6be8a04c54551194ba5143f1a555d43fe60d53843383a9915eeccb2", + "typeString": "literal_string \"log(uint,address,bool,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8439, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29141:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29141:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29141:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8438, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "29125:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29125:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8448, + "nodeType": "ExpressionStatement", + "src": "29125:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29058:3:4", + "parameters": { + "id": 8436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8429, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29067:2:4", + "nodeType": "VariableDeclaration", + "scope": 8450, + "src": "29062:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8428, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29062:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8431, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29079:2:4", + "nodeType": "VariableDeclaration", + "scope": 8450, + "src": "29071:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8430, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29071:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8433, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29088:2:4", + "nodeType": "VariableDeclaration", + "scope": 8450, + "src": "29083:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8432, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29083:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8435, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29097:2:4", + "nodeType": "VariableDeclaration", + "scope": 8450, + "src": "29092:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8434, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29092:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "29061:39:4" + }, + "returnParameters": { + "id": 8437, + "nodeType": "ParameterList", + "parameters": [], + "src": "29115:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8473, + "nodeType": "FunctionDefinition", + "src": "29225:181:4", + "body": { + "id": 8472, + "nodeType": "Block", + "src": "29300:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c626f6f6c2c737472696e6729", + "id": 8464, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29350:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_63f0e24221aeb6c531ea500a191ac35497bf48695fb29864fe57726a12d605c6", + "typeString": "literal_string \"log(uint,address,bool,string)\"" + }, + "value": "log(uint,address,bool,string)" + }, + { + "id": 8465, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8452, + "src": "29383:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8466, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8454, + "src": "29387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8467, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8456, + "src": "29391:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8468, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8458, + "src": "29395:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_63f0e24221aeb6c531ea500a191ac35497bf48695fb29864fe57726a12d605c6", + "typeString": "literal_string \"log(uint,address,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8462, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29326:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29326:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8469, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29326:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8461, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "29310:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29310:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8471, + "nodeType": "ExpressionStatement", + "src": "29310:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29234:3:4", + "parameters": { + "id": 8459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8452, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29243:2:4", + "nodeType": "VariableDeclaration", + "scope": 8473, + "src": "29238:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8451, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29238:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8454, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29255:2:4", + "nodeType": "VariableDeclaration", + "scope": 8473, + "src": "29247:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8453, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29247:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8456, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29264:2:4", + "nodeType": "VariableDeclaration", + "scope": 8473, + "src": "29259:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8455, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29259:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8458, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29282:2:4", + "nodeType": "VariableDeclaration", + "scope": 8473, + "src": "29268:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8457, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29268:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29237:48:4" + }, + "returnParameters": { + "id": 8460, + "nodeType": "ParameterList", + "parameters": [], + "src": "29300:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8496, + "nodeType": "FunctionDefinition", + "src": "29412:170:4", + "body": { + "id": 8495, + "nodeType": "Block", + "src": "29478:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c626f6f6c2c626f6f6c29", + "id": 8487, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29528:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7e27410dc86ab22a92f2a269c9cf538b707bde3ac248f933df1f4d0b76947d32", + "typeString": "literal_string \"log(uint,address,bool,bool)\"" + }, + "value": "log(uint,address,bool,bool)" + }, + { + "id": 8488, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8475, + "src": "29559:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8489, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8477, + "src": "29563:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8490, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8479, + "src": "29567:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8491, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8481, + "src": "29571:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7e27410dc86ab22a92f2a269c9cf538b707bde3ac248f933df1f4d0b76947d32", + "typeString": "literal_string \"log(uint,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8485, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29504:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8486, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29504:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8492, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29504:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8484, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "29488:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29488:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8494, + "nodeType": "ExpressionStatement", + "src": "29488:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29421:3:4", + "parameters": { + "id": 8482, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8475, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29430:2:4", + "nodeType": "VariableDeclaration", + "scope": 8496, + "src": "29425:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8474, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29425:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8477, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29442:2:4", + "nodeType": "VariableDeclaration", + "scope": 8496, + "src": "29434:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29434:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8479, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29451:2:4", + "nodeType": "VariableDeclaration", + "scope": 8496, + "src": "29446:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8478, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29446:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8481, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29460:2:4", + "nodeType": "VariableDeclaration", + "scope": 8496, + "src": "29455:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8480, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29455:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "29424:39:4" + }, + "returnParameters": { + "id": 8483, + "nodeType": "ParameterList", + "parameters": [], + "src": "29478:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8519, + "nodeType": "FunctionDefinition", + "src": "29588:176:4", + "body": { + "id": 8518, + "nodeType": "Block", + "src": "29657:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c626f6f6c2c6164647265737329", + "id": 8510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29707:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b6313094a820841f3156e32d271c63cceded7f62875d471e1e87ef33ec252789", + "typeString": "literal_string \"log(uint,address,bool,address)\"" + }, + "value": "log(uint,address,bool,address)" + }, + { + "id": 8511, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8498, + "src": "29741:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8512, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8500, + "src": "29745:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8513, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8502, + "src": "29749:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8514, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8504, + "src": "29753:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b6313094a820841f3156e32d271c63cceded7f62875d471e1e87ef33ec252789", + "typeString": "literal_string \"log(uint,address,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8508, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29683:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8509, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29683:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29683:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8507, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "29667:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29667:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8517, + "nodeType": "ExpressionStatement", + "src": "29667:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29597:3:4", + "parameters": { + "id": 8505, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8498, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29606:2:4", + "nodeType": "VariableDeclaration", + "scope": 8519, + "src": "29601:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8497, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29601:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8500, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29618:2:4", + "nodeType": "VariableDeclaration", + "scope": 8519, + "src": "29610:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8499, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29610:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8502, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29627:2:4", + "nodeType": "VariableDeclaration", + "scope": 8519, + "src": "29622:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8501, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29622:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8504, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29639:2:4", + "nodeType": "VariableDeclaration", + "scope": 8519, + "src": "29631:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8503, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29631:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "29600:42:4" + }, + "returnParameters": { + "id": 8506, + "nodeType": "ParameterList", + "parameters": [], + "src": "29657:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8542, + "nodeType": "FunctionDefinition", + "src": "29770:176:4", + "body": { + "id": 8541, + "nodeType": "Block", + "src": "29839:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c616464726573732c75696e7429", + "id": 8533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29889:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9a3cbf9603c94c357c6f62b7a32789d9ca5caa81518d1277c9ca986a5650734b", + "typeString": "literal_string \"log(uint,address,address,uint)\"" + }, + "value": "log(uint,address,address,uint)" + }, + { + "id": 8534, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8521, + "src": "29923:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8535, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8523, + "src": "29927:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8536, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8525, + "src": "29931:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8537, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8527, + "src": "29935:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9a3cbf9603c94c357c6f62b7a32789d9ca5caa81518d1277c9ca986a5650734b", + "typeString": "literal_string \"log(uint,address,address,uint)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29865:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29865:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29865:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8530, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "29849:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29849:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8540, + "nodeType": "ExpressionStatement", + "src": "29849:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29779:3:4", + "parameters": { + "id": 8528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8521, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29788:2:4", + "nodeType": "VariableDeclaration", + "scope": 8542, + "src": "29783:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8520, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29783:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8523, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29800:2:4", + "nodeType": "VariableDeclaration", + "scope": 8542, + "src": "29792:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8522, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29792:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8525, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29812:2:4", + "nodeType": "VariableDeclaration", + "scope": 8542, + "src": "29804:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8524, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29804:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8527, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29821:2:4", + "nodeType": "VariableDeclaration", + "scope": 8542, + "src": "29816:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8526, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29816:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "29782:42:4" + }, + "returnParameters": { + "id": 8529, + "nodeType": "ParameterList", + "parameters": [], + "src": "29839:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8565, + "nodeType": "FunctionDefinition", + "src": "29952:187:4", + "body": { + "id": 8564, + "nodeType": "Block", + "src": "30030:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c616464726573732c737472696e6729", + "id": 8556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30080:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7943dc6627d308affd474fe50b563bcfbf09518236383b806f11730459213622", + "typeString": "literal_string \"log(uint,address,address,string)\"" + }, + "value": "log(uint,address,address,string)" + }, + { + "id": 8557, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8544, + "src": "30116:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8558, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8546, + "src": "30120:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8559, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8548, + "src": "30124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8560, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8550, + "src": "30128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7943dc6627d308affd474fe50b563bcfbf09518236383b806f11730459213622", + "typeString": "literal_string \"log(uint,address,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8554, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30056:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8555, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30056:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30056:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8553, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30040:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8562, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30040:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8563, + "nodeType": "ExpressionStatement", + "src": "30040:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29961:3:4", + "parameters": { + "id": 8551, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8544, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29970:2:4", + "nodeType": "VariableDeclaration", + "scope": 8565, + "src": "29965:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8543, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "29965:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8546, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29982:2:4", + "nodeType": "VariableDeclaration", + "scope": 8565, + "src": "29974:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8545, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29974:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8548, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29994:2:4", + "nodeType": "VariableDeclaration", + "scope": 8565, + "src": "29986:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8547, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29986:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8550, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30012:2:4", + "nodeType": "VariableDeclaration", + "scope": 8565, + "src": "29998:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8549, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29998:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29964:51:4" + }, + "returnParameters": { + "id": 8552, + "nodeType": "ParameterList", + "parameters": [], + "src": "30030:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8588, + "nodeType": "FunctionDefinition", + "src": "30145:176:4", + "body": { + "id": 8587, + "nodeType": "Block", + "src": "30214:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c616464726573732c626f6f6c29", + "id": 8579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30264:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_01550b04ea9916da7bc495d1b5ca5c4bd8d92ef3a98e2cca5a948cec5011f38c", + "typeString": "literal_string \"log(uint,address,address,bool)\"" + }, + "value": "log(uint,address,address,bool)" + }, + { + "id": 8580, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8567, + "src": "30298:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8581, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8569, + "src": "30302:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8582, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8571, + "src": "30306:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8583, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8573, + "src": "30310:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_01550b04ea9916da7bc495d1b5ca5c4bd8d92ef3a98e2cca5a948cec5011f38c", + "typeString": "literal_string \"log(uint,address,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8577, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30240:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8578, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30240:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30240:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8576, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30224:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30224:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8586, + "nodeType": "ExpressionStatement", + "src": "30224:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30154:3:4", + "parameters": { + "id": 8574, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8567, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30163:2:4", + "nodeType": "VariableDeclaration", + "scope": 8588, + "src": "30158:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8566, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30158:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8569, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30175:2:4", + "nodeType": "VariableDeclaration", + "scope": 8588, + "src": "30167:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8568, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30167:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8571, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30187:2:4", + "nodeType": "VariableDeclaration", + "scope": 8588, + "src": "30179:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8570, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30179:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8573, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30196:2:4", + "nodeType": "VariableDeclaration", + "scope": 8588, + "src": "30191:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8572, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30191:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30157:42:4" + }, + "returnParameters": { + "id": 8575, + "nodeType": "ParameterList", + "parameters": [], + "src": "30214:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8611, + "nodeType": "FunctionDefinition", + "src": "30327:182:4", + "body": { + "id": 8610, + "nodeType": "Block", + "src": "30399:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e742c616464726573732c616464726573732c6164647265737329", + "id": 8602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30449:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_554745f9e6550eea6000ea2febc94de95d453100d5d60359e62cd398b366bfc4", + "typeString": "literal_string \"log(uint,address,address,address)\"" + }, + "value": "log(uint,address,address,address)" + }, + { + "id": 8603, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8590, + "src": "30486:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8604, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8592, + "src": "30490:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8605, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8594, + "src": "30494:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8606, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8596, + "src": "30498:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_554745f9e6550eea6000ea2febc94de95d453100d5d60359e62cd398b366bfc4", + "typeString": "literal_string \"log(uint,address,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8600, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30425:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8601, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30425:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30425:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8599, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30409:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30409:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8609, + "nodeType": "ExpressionStatement", + "src": "30409:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30336:3:4", + "parameters": { + "id": 8597, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8590, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30345:2:4", + "nodeType": "VariableDeclaration", + "scope": 8611, + "src": "30340:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8589, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30340:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8592, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30357:2:4", + "nodeType": "VariableDeclaration", + "scope": 8611, + "src": "30349:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8591, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30349:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8594, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30369:2:4", + "nodeType": "VariableDeclaration", + "scope": 8611, + "src": "30361:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8593, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30361:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8596, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30381:2:4", + "nodeType": "VariableDeclaration", + "scope": 8611, + "src": "30373:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8595, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30373:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "30339:45:4" + }, + "returnParameters": { + "id": 8598, + "nodeType": "ParameterList", + "parameters": [], + "src": "30399:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8634, + "nodeType": "FunctionDefinition", + "src": "30515:175:4", + "body": { + "id": 8633, + "nodeType": "Block", + "src": "30587:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c75696e742c75696e7429", + "id": 8625, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30637:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_08ee5666d6bd329d27af528e563bb238dedf631fe471effe31c7123dcb5164f2", + "typeString": "literal_string \"log(string,uint,uint,uint)\"" + }, + "value": "log(string,uint,uint,uint)" + }, + { + "id": 8626, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8613, + "src": "30667:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8627, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8615, + "src": "30671:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8628, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8617, + "src": "30675:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8629, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8619, + "src": "30679:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_08ee5666d6bd329d27af528e563bb238dedf631fe471effe31c7123dcb5164f2", + "typeString": "literal_string \"log(string,uint,uint,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8623, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30613:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30613:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30613:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8622, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30597:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30597:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8632, + "nodeType": "ExpressionStatement", + "src": "30597:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30524:3:4", + "parameters": { + "id": 8620, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8613, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30542:2:4", + "nodeType": "VariableDeclaration", + "scope": 8634, + "src": "30528:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8612, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30528:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8615, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30551:2:4", + "nodeType": "VariableDeclaration", + "scope": 8634, + "src": "30546:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8614, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30546:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8617, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30560:2:4", + "nodeType": "VariableDeclaration", + "scope": 8634, + "src": "30555:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8616, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30555:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8619, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30569:2:4", + "nodeType": "VariableDeclaration", + "scope": 8634, + "src": "30564:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8618, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30564:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "30527:45:4" + }, + "returnParameters": { + "id": 8621, + "nodeType": "ParameterList", + "parameters": [], + "src": "30587:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8657, + "nodeType": "FunctionDefinition", + "src": "30696:186:4", + "body": { + "id": 8656, + "nodeType": "Block", + "src": "30777:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c75696e742c737472696e6729", + "id": 8648, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30827:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a54ed4bdd39588715cd10f1b9730ac9f0db064013c8dc11e216fa2ef3a5948b8", + "typeString": "literal_string \"log(string,uint,uint,string)\"" + }, + "value": "log(string,uint,uint,string)" + }, + { + "id": 8649, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8636, + "src": "30859:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8650, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8638, + "src": "30863:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8651, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8640, + "src": "30867:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8652, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8642, + "src": "30871:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a54ed4bdd39588715cd10f1b9730ac9f0db064013c8dc11e216fa2ef3a5948b8", + "typeString": "literal_string \"log(string,uint,uint,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8646, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30803:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8647, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30803:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30803:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8645, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30787:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8654, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30787:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8655, + "nodeType": "ExpressionStatement", + "src": "30787:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30705:3:4", + "parameters": { + "id": 8643, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8636, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30723:2:4", + "nodeType": "VariableDeclaration", + "scope": 8657, + "src": "30709:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8635, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30709:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8638, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30732:2:4", + "nodeType": "VariableDeclaration", + "scope": 8657, + "src": "30727:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8637, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30727:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8640, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30741:2:4", + "nodeType": "VariableDeclaration", + "scope": 8657, + "src": "30736:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8639, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30736:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8642, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30759:2:4", + "nodeType": "VariableDeclaration", + "scope": 8657, + "src": "30745:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8641, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30745:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "30708:54:4" + }, + "returnParameters": { + "id": 8644, + "nodeType": "ParameterList", + "parameters": [], + "src": "30777:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8680, + "nodeType": "FunctionDefinition", + "src": "30888:175:4", + "body": { + "id": 8679, + "nodeType": "Block", + "src": "30960:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c75696e742c626f6f6c29", + "id": 8671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31010:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f73c7e3dc5b5cecd5787e08e359612e609c17649291b138c8f184ee441526f2d", + "typeString": "literal_string \"log(string,uint,uint,bool)\"" + }, + "value": "log(string,uint,uint,bool)" + }, + { + "id": 8672, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8659, + "src": "31040:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8673, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8661, + "src": "31044:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8674, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8663, + "src": "31048:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8675, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8665, + "src": "31052:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f73c7e3dc5b5cecd5787e08e359612e609c17649291b138c8f184ee441526f2d", + "typeString": "literal_string \"log(string,uint,uint,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8669, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30986:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8670, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30986:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30986:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8668, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "30970:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30970:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8678, + "nodeType": "ExpressionStatement", + "src": "30970:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30897:3:4", + "parameters": { + "id": 8666, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8659, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30915:2:4", + "nodeType": "VariableDeclaration", + "scope": 8680, + "src": "30901:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8658, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30901:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8661, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30924:2:4", + "nodeType": "VariableDeclaration", + "scope": 8680, + "src": "30919:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8660, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30919:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8663, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30933:2:4", + "nodeType": "VariableDeclaration", + "scope": 8680, + "src": "30928:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8662, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "30928:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8665, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30942:2:4", + "nodeType": "VariableDeclaration", + "scope": 8680, + "src": "30937:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8664, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30937:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30900:45:4" + }, + "returnParameters": { + "id": 8667, + "nodeType": "ParameterList", + "parameters": [], + "src": "30960:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8703, + "nodeType": "FunctionDefinition", + "src": "31069:181:4", + "body": { + "id": 8702, + "nodeType": "Block", + "src": "31144:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c75696e742c6164647265737329", + "id": 8694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31194:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bed728bf5bf9afc41a2cff142cfc289808bbba64cbab683d8e6689e6f6f14abc", + "typeString": "literal_string \"log(string,uint,uint,address)\"" + }, + "value": "log(string,uint,uint,address)" + }, + { + "id": 8695, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8682, + "src": "31227:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8696, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8684, + "src": "31231:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8697, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8686, + "src": "31235:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8698, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8688, + "src": "31239:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bed728bf5bf9afc41a2cff142cfc289808bbba64cbab683d8e6689e6f6f14abc", + "typeString": "literal_string \"log(string,uint,uint,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8692, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31170:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8693, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31170:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31170:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8691, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "31154:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31154:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8701, + "nodeType": "ExpressionStatement", + "src": "31154:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31078:3:4", + "parameters": { + "id": 8689, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8682, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31096:2:4", + "nodeType": "VariableDeclaration", + "scope": 8703, + "src": "31082:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8681, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31082:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8684, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31105:2:4", + "nodeType": "VariableDeclaration", + "scope": 8703, + "src": "31100:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8683, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31100:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8686, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31114:2:4", + "nodeType": "VariableDeclaration", + "scope": 8703, + "src": "31109:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8685, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31109:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8688, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31126:2:4", + "nodeType": "VariableDeclaration", + "scope": 8703, + "src": "31118:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8687, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31118:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "31081:48:4" + }, + "returnParameters": { + "id": 8690, + "nodeType": "ParameterList", + "parameters": [], + "src": "31144:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8726, + "nodeType": "FunctionDefinition", + "src": "31256:186:4", + "body": { + "id": 8725, + "nodeType": "Block", + "src": "31337:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c737472696e672c75696e7429", + "id": 8717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31387:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0c4b225a555b1198e8b1e32117070e759cad9a7266d99901b8a7fd2482d0e2f", + "typeString": "literal_string \"log(string,uint,string,uint)\"" + }, + "value": "log(string,uint,string,uint)" + }, + { + "id": 8718, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8705, + "src": "31419:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8719, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8707, + "src": "31423:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8720, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8709, + "src": "31427:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8721, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8711, + "src": "31431:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0c4b225a555b1198e8b1e32117070e759cad9a7266d99901b8a7fd2482d0e2f", + "typeString": "literal_string \"log(string,uint,string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8715, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31363:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8716, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31363:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31363:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8714, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "31347:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31347:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8724, + "nodeType": "ExpressionStatement", + "src": "31347:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31265:3:4", + "parameters": { + "id": 8712, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8705, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31283:2:4", + "nodeType": "VariableDeclaration", + "scope": 8726, + "src": "31269:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8704, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31269:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8707, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31292:2:4", + "nodeType": "VariableDeclaration", + "scope": 8726, + "src": "31287:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8706, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31287:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8709, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31310:2:4", + "nodeType": "VariableDeclaration", + "scope": 8726, + "src": "31296:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8708, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31296:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8711, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31319:2:4", + "nodeType": "VariableDeclaration", + "scope": 8726, + "src": "31314:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8710, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31314:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "31268:54:4" + }, + "returnParameters": { + "id": 8713, + "nodeType": "ParameterList", + "parameters": [], + "src": "31337:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8749, + "nodeType": "FunctionDefinition", + "src": "31448:197:4", + "body": { + "id": 8748, + "nodeType": "Block", + "src": "31538:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c737472696e672c737472696e6729", + "id": 8740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31588:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c98dae27db048edb14bb31b4326832aa1fb54be52caaf49d1cecb59aa297c07", + "typeString": "literal_string \"log(string,uint,string,string)\"" + }, + "value": "log(string,uint,string,string)" + }, + { + "id": 8741, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8728, + "src": "31622:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8742, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8730, + "src": "31626:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8743, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8732, + "src": "31630:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8744, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8734, + "src": "31634:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c98dae27db048edb14bb31b4326832aa1fb54be52caaf49d1cecb59aa297c07", + "typeString": "literal_string \"log(string,uint,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8738, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31564:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8739, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31564:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31564:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8737, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "31548:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31548:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8747, + "nodeType": "ExpressionStatement", + "src": "31548:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31457:3:4", + "parameters": { + "id": 8735, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8728, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31475:2:4", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "31461:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8727, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31461:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8730, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31484:2:4", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "31479:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8729, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31479:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8732, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31502:2:4", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "31488:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8731, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31488:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8734, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31520:2:4", + "nodeType": "VariableDeclaration", + "scope": 8749, + "src": "31506:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8733, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31506:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "31460:63:4" + }, + "returnParameters": { + "id": 8736, + "nodeType": "ParameterList", + "parameters": [], + "src": "31538:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8772, + "nodeType": "FunctionDefinition", + "src": "31651:186:4", + "body": { + "id": 8771, + "nodeType": "Block", + "src": "31732:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c737472696e672c626f6f6c29", + "id": 8763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31782:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e99f82cf29cb9d7551a843a55617f00569395570d3a9816be530f7c6197ec7c8", + "typeString": "literal_string \"log(string,uint,string,bool)\"" + }, + "value": "log(string,uint,string,bool)" + }, + { + "id": 8764, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8751, + "src": "31814:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8765, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8753, + "src": "31818:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8766, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8755, + "src": "31822:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8767, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8757, + "src": "31826:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e99f82cf29cb9d7551a843a55617f00569395570d3a9816be530f7c6197ec7c8", + "typeString": "literal_string \"log(string,uint,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8761, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31758:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8762, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31758:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31758:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8760, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "31742:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31742:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8770, + "nodeType": "ExpressionStatement", + "src": "31742:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31660:3:4", + "parameters": { + "id": 8758, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8751, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31678:2:4", + "nodeType": "VariableDeclaration", + "scope": 8772, + "src": "31664:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8750, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31664:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8753, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31687:2:4", + "nodeType": "VariableDeclaration", + "scope": 8772, + "src": "31682:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8752, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31682:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8755, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31705:2:4", + "nodeType": "VariableDeclaration", + "scope": 8772, + "src": "31691:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8754, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31691:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8757, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31714:2:4", + "nodeType": "VariableDeclaration", + "scope": 8772, + "src": "31709:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8756, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "31709:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "31663:54:4" + }, + "returnParameters": { + "id": 8759, + "nodeType": "ParameterList", + "parameters": [], + "src": "31732:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8795, + "nodeType": "FunctionDefinition", + "src": "31843:192:4", + "body": { + "id": 8794, + "nodeType": "Block", + "src": "31927:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c737472696e672c6164647265737329", + "id": 8786, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31977:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bb7235e9977380af5de9932c5c28e18d22806b4b0a15ac7e98086e795e59b31c", + "typeString": "literal_string \"log(string,uint,string,address)\"" + }, + "value": "log(string,uint,string,address)" + }, + { + "id": 8787, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8774, + "src": "32012:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8788, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8776, + "src": "32016:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8789, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8778, + "src": "32020:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8790, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8780, + "src": "32024:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bb7235e9977380af5de9932c5c28e18d22806b4b0a15ac7e98086e795e59b31c", + "typeString": "literal_string \"log(string,uint,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8784, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31953:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8785, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31953:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8791, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31953:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8783, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "31937:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8792, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31937:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8793, + "nodeType": "ExpressionStatement", + "src": "31937:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31852:3:4", + "parameters": { + "id": 8781, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8774, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31870:2:4", + "nodeType": "VariableDeclaration", + "scope": 8795, + "src": "31856:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8773, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31856:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8776, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31879:2:4", + "nodeType": "VariableDeclaration", + "scope": 8795, + "src": "31874:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8775, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "31874:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8778, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31897:2:4", + "nodeType": "VariableDeclaration", + "scope": 8795, + "src": "31883:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8777, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31883:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8780, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31909:2:4", + "nodeType": "VariableDeclaration", + "scope": 8795, + "src": "31901:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8779, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31901:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "31855:57:4" + }, + "returnParameters": { + "id": 8782, + "nodeType": "ParameterList", + "parameters": [], + "src": "31927:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8818, + "nodeType": "FunctionDefinition", + "src": "32041:175:4", + "body": { + "id": 8817, + "nodeType": "Block", + "src": "32113:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c626f6f6c2c75696e7429", + "id": 8809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32163:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_550e6ef516f1b3b5be9432b068022af744a919b7f9554b6605ddb59dad27875f", + "typeString": "literal_string \"log(string,uint,bool,uint)\"" + }, + "value": "log(string,uint,bool,uint)" + }, + { + "id": 8810, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8797, + "src": "32193:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8811, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8799, + "src": "32197:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8812, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8801, + "src": "32201:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8813, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8803, + "src": "32205:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_550e6ef516f1b3b5be9432b068022af744a919b7f9554b6605ddb59dad27875f", + "typeString": "literal_string \"log(string,uint,bool,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8807, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32139:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8808, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32139:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32139:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8806, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "32123:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32123:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8816, + "nodeType": "ExpressionStatement", + "src": "32123:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32050:3:4", + "parameters": { + "id": 8804, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8797, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32068:2:4", + "nodeType": "VariableDeclaration", + "scope": 8818, + "src": "32054:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8796, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32054:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8799, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32077:2:4", + "nodeType": "VariableDeclaration", + "scope": 8818, + "src": "32072:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8798, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32072:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8801, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32086:2:4", + "nodeType": "VariableDeclaration", + "scope": 8818, + "src": "32081:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8800, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32081:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8803, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32095:2:4", + "nodeType": "VariableDeclaration", + "scope": 8818, + "src": "32090:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8802, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32090:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "32053:45:4" + }, + "returnParameters": { + "id": 8805, + "nodeType": "ParameterList", + "parameters": [], + "src": "32113:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8841, + "nodeType": "FunctionDefinition", + "src": "32222:186:4", + "body": { + "id": 8840, + "nodeType": "Block", + "src": "32303:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c626f6f6c2c737472696e6729", + "id": 8832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32353:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_76cc6064a225b36730abdd64aa9dcb74a19c97e79a6eaa7e7a7381b59d8b3f68", + "typeString": "literal_string \"log(string,uint,bool,string)\"" + }, + "value": "log(string,uint,bool,string)" + }, + { + "id": 8833, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8820, + "src": "32385:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8834, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8822, + "src": "32389:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8835, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8824, + "src": "32393:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8836, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8826, + "src": "32397:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_76cc6064a225b36730abdd64aa9dcb74a19c97e79a6eaa7e7a7381b59d8b3f68", + "typeString": "literal_string \"log(string,uint,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8830, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32329:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32329:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8837, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32329:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8829, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "32313:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8838, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32313:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8839, + "nodeType": "ExpressionStatement", + "src": "32313:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32231:3:4", + "parameters": { + "id": 8827, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8820, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32249:2:4", + "nodeType": "VariableDeclaration", + "scope": 8841, + "src": "32235:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8819, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32235:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8822, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32258:2:4", + "nodeType": "VariableDeclaration", + "scope": 8841, + "src": "32253:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8821, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32253:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8824, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32267:2:4", + "nodeType": "VariableDeclaration", + "scope": 8841, + "src": "32262:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8823, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32262:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8826, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32285:2:4", + "nodeType": "VariableDeclaration", + "scope": 8841, + "src": "32271:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8825, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32271:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32234:54:4" + }, + "returnParameters": { + "id": 8828, + "nodeType": "ParameterList", + "parameters": [], + "src": "32303:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8864, + "nodeType": "FunctionDefinition", + "src": "32414:175:4", + "body": { + "id": 8863, + "nodeType": "Block", + "src": "32486:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c626f6f6c2c626f6f6c29", + "id": 8855, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32536:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e37ff3d07873d5117abd74fe9be70fdadf355b74510a6f7507b0edd4a0032d7f", + "typeString": "literal_string \"log(string,uint,bool,bool)\"" + }, + "value": "log(string,uint,bool,bool)" + }, + { + "id": 8856, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8843, + "src": "32566:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8857, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8845, + "src": "32570:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8858, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8847, + "src": "32574:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8859, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8849, + "src": "32578:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e37ff3d07873d5117abd74fe9be70fdadf355b74510a6f7507b0edd4a0032d7f", + "typeString": "literal_string \"log(string,uint,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8853, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32512:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8854, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32512:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32512:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8852, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "32496:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32496:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8862, + "nodeType": "ExpressionStatement", + "src": "32496:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32423:3:4", + "parameters": { + "id": 8850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8843, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32441:2:4", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "32427:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8842, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32427:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8845, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32450:2:4", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "32445:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8844, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32445:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8847, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32459:2:4", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "32454:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8846, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32454:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8849, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32468:2:4", + "nodeType": "VariableDeclaration", + "scope": 8864, + "src": "32463:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8848, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32463:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "32426:45:4" + }, + "returnParameters": { + "id": 8851, + "nodeType": "ParameterList", + "parameters": [], + "src": "32486:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8887, + "nodeType": "FunctionDefinition", + "src": "32595:181:4", + "body": { + "id": 8886, + "nodeType": "Block", + "src": "32670:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c626f6f6c2c6164647265737329", + "id": 8878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32720:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e5549d91ec2998207f70463fe94a71d0edc39b13b219ff8feb87dd990a616539", + "typeString": "literal_string \"log(string,uint,bool,address)\"" + }, + "value": "log(string,uint,bool,address)" + }, + { + "id": 8879, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8866, + "src": "32753:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8880, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8868, + "src": "32757:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8881, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8870, + "src": "32761:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 8882, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8872, + "src": "32765:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e5549d91ec2998207f70463fe94a71d0edc39b13b219ff8feb87dd990a616539", + "typeString": "literal_string \"log(string,uint,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8876, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32696:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8877, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32696:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32696:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8875, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "32680:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32680:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8885, + "nodeType": "ExpressionStatement", + "src": "32680:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32604:3:4", + "parameters": { + "id": 8873, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8866, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32622:2:4", + "nodeType": "VariableDeclaration", + "scope": 8887, + "src": "32608:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8865, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32608:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8868, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32631:2:4", + "nodeType": "VariableDeclaration", + "scope": 8887, + "src": "32626:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8867, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32626:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8870, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32640:2:4", + "nodeType": "VariableDeclaration", + "scope": 8887, + "src": "32635:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8869, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32635:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8872, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32652:2:4", + "nodeType": "VariableDeclaration", + "scope": 8887, + "src": "32644:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8871, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32644:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "32607:48:4" + }, + "returnParameters": { + "id": 8874, + "nodeType": "ParameterList", + "parameters": [], + "src": "32670:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8910, + "nodeType": "FunctionDefinition", + "src": "32782:181:4", + "body": { + "id": 8909, + "nodeType": "Block", + "src": "32857:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c616464726573732c75696e7429", + "id": 8901, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32907:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_58497afe9e509136f5cf2fb1db9876437d9cbd769be5985b518ff094427e4f75", + "typeString": "literal_string \"log(string,uint,address,uint)\"" + }, + "value": "log(string,uint,address,uint)" + }, + { + "id": 8902, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8889, + "src": "32940:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8903, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8891, + "src": "32944:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8904, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8893, + "src": "32948:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8905, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8895, + "src": "32952:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_58497afe9e509136f5cf2fb1db9876437d9cbd769be5985b518ff094427e4f75", + "typeString": "literal_string \"log(string,uint,address,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8899, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32883:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8900, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32883:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8906, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32883:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8898, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "32867:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32867:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8908, + "nodeType": "ExpressionStatement", + "src": "32867:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32791:3:4", + "parameters": { + "id": 8896, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8889, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32809:2:4", + "nodeType": "VariableDeclaration", + "scope": 8910, + "src": "32795:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8888, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32795:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8891, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32818:2:4", + "nodeType": "VariableDeclaration", + "scope": 8910, + "src": "32813:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8890, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32813:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8893, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32830:2:4", + "nodeType": "VariableDeclaration", + "scope": 8910, + "src": "32822:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8892, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32822:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8895, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32839:2:4", + "nodeType": "VariableDeclaration", + "scope": 8910, + "src": "32834:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8894, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "32834:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "32794:48:4" + }, + "returnParameters": { + "id": 8897, + "nodeType": "ParameterList", + "parameters": [], + "src": "32857:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8933, + "nodeType": "FunctionDefinition", + "src": "32969:192:4", + "body": { + "id": 8932, + "nodeType": "Block", + "src": "33053:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c616464726573732c737472696e6729", + "id": 8924, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33103:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3254c2e85e824e7dd0b3e2e602f95218ed23a331406e197386693086d91053c0", + "typeString": "literal_string \"log(string,uint,address,string)\"" + }, + "value": "log(string,uint,address,string)" + }, + { + "id": 8925, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8912, + "src": "33138:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8926, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8914, + "src": "33142:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8927, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8916, + "src": "33146:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8928, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8918, + "src": "33150:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3254c2e85e824e7dd0b3e2e602f95218ed23a331406e197386693086d91053c0", + "typeString": "literal_string \"log(string,uint,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 8922, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33079:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8923, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33079:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8929, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33079:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8921, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "33063:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33063:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8931, + "nodeType": "ExpressionStatement", + "src": "33063:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32978:3:4", + "parameters": { + "id": 8919, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8912, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32996:2:4", + "nodeType": "VariableDeclaration", + "scope": 8933, + "src": "32982:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8911, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32982:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8914, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33005:2:4", + "nodeType": "VariableDeclaration", + "scope": 8933, + "src": "33000:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8913, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33000:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8916, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33017:2:4", + "nodeType": "VariableDeclaration", + "scope": 8933, + "src": "33009:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8915, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33009:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8918, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33035:2:4", + "nodeType": "VariableDeclaration", + "scope": 8933, + "src": "33021:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8917, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33021:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32981:57:4" + }, + "returnParameters": { + "id": 8920, + "nodeType": "ParameterList", + "parameters": [], + "src": "33053:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8956, + "nodeType": "FunctionDefinition", + "src": "33167:181:4", + "body": { + "id": 8955, + "nodeType": "Block", + "src": "33242:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c616464726573732c626f6f6c29", + "id": 8947, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33292:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1106a8f7a9fdb0743cc8f33bcf28da92f358b488bfc5eb2426dcc116571bae10", + "typeString": "literal_string \"log(string,uint,address,bool)\"" + }, + "value": "log(string,uint,address,bool)" + }, + { + "id": 8948, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8935, + "src": "33325:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8949, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8937, + "src": "33329:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8950, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8939, + "src": "33333:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8951, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8941, + "src": "33337:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1106a8f7a9fdb0743cc8f33bcf28da92f358b488bfc5eb2426dcc116571bae10", + "typeString": "literal_string \"log(string,uint,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 8945, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33268:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8946, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33268:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33268:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8944, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "33252:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33252:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8954, + "nodeType": "ExpressionStatement", + "src": "33252:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33176:3:4", + "parameters": { + "id": 8942, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8935, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33194:2:4", + "nodeType": "VariableDeclaration", + "scope": 8956, + "src": "33180:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8934, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33180:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8937, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33203:2:4", + "nodeType": "VariableDeclaration", + "scope": 8956, + "src": "33198:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8936, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33198:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8939, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33215:2:4", + "nodeType": "VariableDeclaration", + "scope": 8956, + "src": "33207:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8938, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33207:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8941, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33224:2:4", + "nodeType": "VariableDeclaration", + "scope": 8956, + "src": "33219:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 8940, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33219:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33179:48:4" + }, + "returnParameters": { + "id": 8943, + "nodeType": "ParameterList", + "parameters": [], + "src": "33242:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 8979, + "nodeType": "FunctionDefinition", + "src": "33354:187:4", + "body": { + "id": 8978, + "nodeType": "Block", + "src": "33432:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e742c616464726573732c6164647265737329", + "id": 8970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33482:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eac892812ad5b43e056a005de5f4269f3430ecb19d3374f0e27d055022fbb381", + "typeString": "literal_string \"log(string,uint,address,address)\"" + }, + "value": "log(string,uint,address,address)" + }, + { + "id": 8971, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8958, + "src": "33518:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8972, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8960, + "src": "33522:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8973, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8962, + "src": "33526:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 8974, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8964, + "src": "33530:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eac892812ad5b43e056a005de5f4269f3430ecb19d3374f0e27d055022fbb381", + "typeString": "literal_string \"log(string,uint,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 8968, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33458:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8969, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33458:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33458:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8967, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "33442:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33442:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 8977, + "nodeType": "ExpressionStatement", + "src": "33442:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33363:3:4", + "parameters": { + "id": 8965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8958, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33381:2:4", + "nodeType": "VariableDeclaration", + "scope": 8979, + "src": "33367:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8957, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33367:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8960, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33390:2:4", + "nodeType": "VariableDeclaration", + "scope": 8979, + "src": "33385:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8959, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33385:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8962, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33402:2:4", + "nodeType": "VariableDeclaration", + "scope": 8979, + "src": "33394:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8961, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33394:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8964, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33414:2:4", + "nodeType": "VariableDeclaration", + "scope": 8979, + "src": "33406:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 8963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33406:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "33366:51:4" + }, + "returnParameters": { + "id": 8966, + "nodeType": "ParameterList", + "parameters": [], + "src": "33432:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9002, + "nodeType": "FunctionDefinition", + "src": "33547:186:4", + "body": { + "id": 9001, + "nodeType": "Block", + "src": "33628:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e742c75696e7429", + "id": 8993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33678:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d5cf17d093c9068e0703e037cea1f6c3048599508dc7985106a94aa34c08c926", + "typeString": "literal_string \"log(string,string,uint,uint)\"" + }, + "value": "log(string,string,uint,uint)" + }, + { + "id": 8994, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8981, + "src": "33710:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8995, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8983, + "src": "33714:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 8996, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8985, + "src": "33718:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 8997, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 8987, + "src": "33722:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d5cf17d093c9068e0703e037cea1f6c3048599508dc7985106a94aa34c08c926", + "typeString": "literal_string \"log(string,string,uint,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 8991, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33654:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 8992, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33654:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 8998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33654:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 8990, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "33638:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 8999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33638:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9000, + "nodeType": "ExpressionStatement", + "src": "33638:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33556:3:4", + "parameters": { + "id": 8988, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 8981, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33574:2:4", + "nodeType": "VariableDeclaration", + "scope": 9002, + "src": "33560:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8980, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33560:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8983, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33592:2:4", + "nodeType": "VariableDeclaration", + "scope": 9002, + "src": "33578:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 8982, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33578:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8985, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33601:2:4", + "nodeType": "VariableDeclaration", + "scope": 9002, + "src": "33596:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8984, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33596:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 8987, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33610:2:4", + "nodeType": "VariableDeclaration", + "scope": 9002, + "src": "33605:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8986, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33605:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "33559:54:4" + }, + "returnParameters": { + "id": 8989, + "nodeType": "ParameterList", + "parameters": [], + "src": "33628:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9025, + "nodeType": "FunctionDefinition", + "src": "33739:197:4", + "body": { + "id": 9024, + "nodeType": "Block", + "src": "33829:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e742c737472696e6729", + "id": 9016, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33879:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8d142cdddf40ab944834474e14a37534e67dcf2f6ffd68fd3d894f907fb76a0a", + "typeString": "literal_string \"log(string,string,uint,string)\"" + }, + "value": "log(string,string,uint,string)" + }, + { + "id": 9017, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9004, + "src": "33913:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9018, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9006, + "src": "33917:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9019, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9008, + "src": "33921:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9020, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9010, + "src": "33925:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8d142cdddf40ab944834474e14a37534e67dcf2f6ffd68fd3d894f907fb76a0a", + "typeString": "literal_string \"log(string,string,uint,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9014, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33855:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33855:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33855:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9013, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "33839:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33839:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9023, + "nodeType": "ExpressionStatement", + "src": "33839:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33748:3:4", + "parameters": { + "id": 9011, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9004, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33766:2:4", + "nodeType": "VariableDeclaration", + "scope": 9025, + "src": "33752:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9003, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33752:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9006, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33784:2:4", + "nodeType": "VariableDeclaration", + "scope": 9025, + "src": "33770:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9005, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33770:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9008, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33793:2:4", + "nodeType": "VariableDeclaration", + "scope": 9025, + "src": "33788:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9007, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33788:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9010, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33811:2:4", + "nodeType": "VariableDeclaration", + "scope": 9025, + "src": "33797:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9009, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33797:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "33751:63:4" + }, + "returnParameters": { + "id": 9012, + "nodeType": "ParameterList", + "parameters": [], + "src": "33829:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9048, + "nodeType": "FunctionDefinition", + "src": "33942:186:4", + "body": { + "id": 9047, + "nodeType": "Block", + "src": "34023:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e742c626f6f6c29", + "id": 9039, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34073:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e65658ca6578795ac405c3487ab68ec21d76f9a79d734a9ab869db5d96b4556b", + "typeString": "literal_string \"log(string,string,uint,bool)\"" + }, + "value": "log(string,string,uint,bool)" + }, + { + "id": 9040, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9027, + "src": "34105:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9041, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9029, + "src": "34109:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9042, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9031, + "src": "34113:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9043, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9033, + "src": "34117:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e65658ca6578795ac405c3487ab68ec21d76f9a79d734a9ab869db5d96b4556b", + "typeString": "literal_string \"log(string,string,uint,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9037, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34049:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9038, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34049:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34049:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9036, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "34033:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34033:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9046, + "nodeType": "ExpressionStatement", + "src": "34033:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33951:3:4", + "parameters": { + "id": 9034, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9027, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33969:2:4", + "nodeType": "VariableDeclaration", + "scope": 9048, + "src": "33955:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9026, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33955:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9029, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33987:2:4", + "nodeType": "VariableDeclaration", + "scope": 9048, + "src": "33973:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9028, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33973:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9031, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33996:2:4", + "nodeType": "VariableDeclaration", + "scope": 9048, + "src": "33991:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9030, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "33991:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9033, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34005:2:4", + "nodeType": "VariableDeclaration", + "scope": 9048, + "src": "34000:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9032, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34000:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33954:54:4" + }, + "returnParameters": { + "id": 9035, + "nodeType": "ParameterList", + "parameters": [], + "src": "34023:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9071, + "nodeType": "FunctionDefinition", + "src": "34134:192:4", + "body": { + "id": 9070, + "nodeType": "Block", + "src": "34218:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e742c6164647265737329", + "id": 9062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34268:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d4f46805293f3e84ba6dbfe353f76b3d1f1cfb2ff1e8024fb2adb45e2b7a128", + "typeString": "literal_string \"log(string,string,uint,address)\"" + }, + "value": "log(string,string,uint,address)" + }, + { + "id": 9063, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9050, + "src": "34303:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9064, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9052, + "src": "34307:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9065, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9054, + "src": "34311:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9066, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9056, + "src": "34315:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d4f46805293f3e84ba6dbfe353f76b3d1f1cfb2ff1e8024fb2adb45e2b7a128", + "typeString": "literal_string \"log(string,string,uint,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9060, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34244:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9061, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34244:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34244:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9059, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "34228:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34228:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9069, + "nodeType": "ExpressionStatement", + "src": "34228:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34143:3:4", + "parameters": { + "id": 9057, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9050, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34161:2:4", + "nodeType": "VariableDeclaration", + "scope": 9071, + "src": "34147:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9049, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34147:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9052, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34179:2:4", + "nodeType": "VariableDeclaration", + "scope": 9071, + "src": "34165:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9051, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34165:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9054, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34188:2:4", + "nodeType": "VariableDeclaration", + "scope": 9071, + "src": "34183:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9053, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "34183:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9056, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34200:2:4", + "nodeType": "VariableDeclaration", + "scope": 9071, + "src": "34192:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9055, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34192:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34146:57:4" + }, + "returnParameters": { + "id": 9058, + "nodeType": "ParameterList", + "parameters": [], + "src": "34218:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9094, + "nodeType": "FunctionDefinition", + "src": "34332:197:4", + "body": { + "id": 9093, + "nodeType": "Block", + "src": "34422:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c75696e7429", + "id": 9085, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34472:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9fd009f5f31a16d665d9be327a4a2b17dc428108ae31e46ab875e747b5ee155f", + "typeString": "literal_string \"log(string,string,string,uint)\"" + }, + "value": "log(string,string,string,uint)" + }, + { + "id": 9086, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9073, + "src": "34506:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9087, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9075, + "src": "34510:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9088, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9077, + "src": "34514:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9089, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9079, + "src": "34518:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9fd009f5f31a16d665d9be327a4a2b17dc428108ae31e46ab875e747b5ee155f", + "typeString": "literal_string \"log(string,string,string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9083, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34448:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34448:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34448:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9082, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "34432:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34432:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9092, + "nodeType": "ExpressionStatement", + "src": "34432:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34341:3:4", + "parameters": { + "id": 9080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9073, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34359:2:4", + "nodeType": "VariableDeclaration", + "scope": 9094, + "src": "34345:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9072, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34345:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9075, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34377:2:4", + "nodeType": "VariableDeclaration", + "scope": 9094, + "src": "34363:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9074, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34363:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9077, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34395:2:4", + "nodeType": "VariableDeclaration", + "scope": 9094, + "src": "34381:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9076, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34381:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9079, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34404:2:4", + "nodeType": "VariableDeclaration", + "scope": 9094, + "src": "34399:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9078, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "34399:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "34344:63:4" + }, + "returnParameters": { + "id": 9081, + "nodeType": "ParameterList", + "parameters": [], + "src": "34422:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9117, + "nodeType": "FunctionDefinition", + "src": "34535:208:4", + "body": { + "id": 9116, + "nodeType": "Block", + "src": "34634:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c737472696e6729", + "id": 9108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34684:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + "value": "log(string,string,string,string)" + }, + { + "id": 9109, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9096, + "src": "34720:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9110, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9098, + "src": "34724:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9111, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9100, + "src": "34728:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9112, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9102, + "src": "34732:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9106, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34660:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9107, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34660:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34660:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9105, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "34644:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34644:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9115, + "nodeType": "ExpressionStatement", + "src": "34644:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34544:3:4", + "parameters": { + "id": 9103, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9096, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34562:2:4", + "nodeType": "VariableDeclaration", + "scope": 9117, + "src": "34548:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9095, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34548:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9098, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34580:2:4", + "nodeType": "VariableDeclaration", + "scope": 9117, + "src": "34566:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9097, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34566:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9100, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34598:2:4", + "nodeType": "VariableDeclaration", + "scope": 9117, + "src": "34584:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9099, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34584:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9102, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34616:2:4", + "nodeType": "VariableDeclaration", + "scope": 9117, + "src": "34602:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9101, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34602:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "34547:72:4" + }, + "returnParameters": { + "id": 9104, + "nodeType": "ParameterList", + "parameters": [], + "src": "34634:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9140, + "nodeType": "FunctionDefinition", + "src": "34749:197:4", + "body": { + "id": 9139, + "nodeType": "Block", + "src": "34839:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c626f6f6c29", + "id": 9131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34889:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + "value": "log(string,string,string,bool)" + }, + { + "id": 9132, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9119, + "src": "34923:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9133, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9121, + "src": "34927:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9134, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9123, + "src": "34931:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9135, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9125, + "src": "34935:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9129, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34865:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9130, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34865:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34865:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9128, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "34849:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34849:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9138, + "nodeType": "ExpressionStatement", + "src": "34849:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34758:3:4", + "parameters": { + "id": 9126, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9119, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34776:2:4", + "nodeType": "VariableDeclaration", + "scope": 9140, + "src": "34762:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9118, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34762:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9121, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34794:2:4", + "nodeType": "VariableDeclaration", + "scope": 9140, + "src": "34780:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9120, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34780:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9123, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34812:2:4", + "nodeType": "VariableDeclaration", + "scope": 9140, + "src": "34798:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9122, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34798:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9125, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34821:2:4", + "nodeType": "VariableDeclaration", + "scope": 9140, + "src": "34816:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9124, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34816:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "34761:63:4" + }, + "returnParameters": { + "id": 9127, + "nodeType": "ParameterList", + "parameters": [], + "src": "34839:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9163, + "nodeType": "FunctionDefinition", + "src": "34952:203:4", + "body": { + "id": 9162, + "nodeType": "Block", + "src": "35045:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c6164647265737329", + "id": 9154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35095:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + "value": "log(string,string,string,address)" + }, + { + "id": 9155, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9142, + "src": "35132:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9156, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9144, + "src": "35136:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9157, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9146, + "src": "35140:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9158, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9148, + "src": "35144:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9152, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35071:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9153, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35071:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35071:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9151, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "35055:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35055:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9161, + "nodeType": "ExpressionStatement", + "src": "35055:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34961:3:4", + "parameters": { + "id": 9149, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9142, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34979:2:4", + "nodeType": "VariableDeclaration", + "scope": 9163, + "src": "34965:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9141, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34965:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9144, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34997:2:4", + "nodeType": "VariableDeclaration", + "scope": 9163, + "src": "34983:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9143, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34983:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9146, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35015:2:4", + "nodeType": "VariableDeclaration", + "scope": 9163, + "src": "35001:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9145, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35001:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9148, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35027:2:4", + "nodeType": "VariableDeclaration", + "scope": 9163, + "src": "35019:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35019:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34964:66:4" + }, + "returnParameters": { + "id": 9150, + "nodeType": "ParameterList", + "parameters": [], + "src": "35045:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9186, + "nodeType": "FunctionDefinition", + "src": "35161:186:4", + "body": { + "id": 9185, + "nodeType": "Block", + "src": "35242:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c75696e7429", + "id": 9177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35292:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_86818a7aa9bc994aa800ce554e865f0047fd8aaa8799a458e8fea2db0986c5c1", + "typeString": "literal_string \"log(string,string,bool,uint)\"" + }, + "value": "log(string,string,bool,uint)" + }, + { + "id": 9178, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9165, + "src": "35324:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9179, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9167, + "src": "35328:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9180, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9169, + "src": "35332:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9181, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9171, + "src": "35336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_86818a7aa9bc994aa800ce554e865f0047fd8aaa8799a458e8fea2db0986c5c1", + "typeString": "literal_string \"log(string,string,bool,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9175, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35268:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35268:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9182, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35268:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9174, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "35252:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35252:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9184, + "nodeType": "ExpressionStatement", + "src": "35252:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35170:3:4", + "parameters": { + "id": 9172, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9165, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35188:2:4", + "nodeType": "VariableDeclaration", + "scope": 9186, + "src": "35174:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9164, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35174:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9167, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35206:2:4", + "nodeType": "VariableDeclaration", + "scope": 9186, + "src": "35192:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9166, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35192:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9169, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35215:2:4", + "nodeType": "VariableDeclaration", + "scope": 9186, + "src": "35210:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35210:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9171, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35224:2:4", + "nodeType": "VariableDeclaration", + "scope": 9186, + "src": "35219:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9170, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "35219:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35173:54:4" + }, + "returnParameters": { + "id": 9173, + "nodeType": "ParameterList", + "parameters": [], + "src": "35242:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9209, + "nodeType": "FunctionDefinition", + "src": "35353:197:4", + "body": { + "id": 9208, + "nodeType": "Block", + "src": "35443:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c737472696e6729", + "id": 9200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35493:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + "value": "log(string,string,bool,string)" + }, + { + "id": 9201, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9188, + "src": "35527:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9202, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9190, + "src": "35531:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9203, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9192, + "src": "35535:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9204, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9194, + "src": "35539:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + { + "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" + } + ], + "expression": { + "id": 9198, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35469:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35469:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35469:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9197, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "35453:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35453:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9207, + "nodeType": "ExpressionStatement", + "src": "35453:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35362:3:4", + "parameters": { + "id": 9195, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9188, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35380:2:4", + "nodeType": "VariableDeclaration", + "scope": 9209, + "src": "35366:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9187, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35366:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9190, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35398:2:4", + "nodeType": "VariableDeclaration", + "scope": 9209, + "src": "35384:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9189, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35384:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9192, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35407:2:4", + "nodeType": "VariableDeclaration", + "scope": 9209, + "src": "35402:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9191, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35402:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9194, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35425:2:4", + "nodeType": "VariableDeclaration", + "scope": 9209, + "src": "35411:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9193, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35411:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "35365:63:4" + }, + "returnParameters": { + "id": 9196, + "nodeType": "ParameterList", + "parameters": [], + "src": "35443:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9232, + "nodeType": "FunctionDefinition", + "src": "35556:186:4", + "body": { + "id": 9231, + "nodeType": "Block", + "src": "35637:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c626f6f6c29", + "id": 9223, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35687:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + "value": "log(string,string,bool,bool)" + }, + { + "id": 9224, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9211, + "src": "35719:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9225, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9213, + "src": "35723:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9226, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9215, + "src": "35727:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9227, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9217, + "src": "35731:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9221, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35663:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35663:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35663:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9220, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "35647:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35647:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9230, + "nodeType": "ExpressionStatement", + "src": "35647:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35565:3:4", + "parameters": { + "id": 9218, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9211, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35583:2:4", + "nodeType": "VariableDeclaration", + "scope": 9232, + "src": "35569:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9210, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35569:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9213, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35601:2:4", + "nodeType": "VariableDeclaration", + "scope": 9232, + "src": "35587:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9212, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35587:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9215, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35610:2:4", + "nodeType": "VariableDeclaration", + "scope": 9232, + "src": "35605:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9214, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35605:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9217, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35619:2:4", + "nodeType": "VariableDeclaration", + "scope": 9232, + "src": "35614:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9216, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35614:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "35568:54:4" + }, + "returnParameters": { + "id": 9219, + "nodeType": "ParameterList", + "parameters": [], + "src": "35637:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9255, + "nodeType": "FunctionDefinition", + "src": "35748:192:4", + "body": { + "id": 9254, + "nodeType": "Block", + "src": "35832:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c6164647265737329", + "id": 9246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35882:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + "value": "log(string,string,bool,address)" + }, + { + "id": 9247, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9234, + "src": "35917:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9248, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9236, + "src": "35921:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9249, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9238, + "src": "35925:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9250, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9240, + "src": "35929:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9244, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35858:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35858:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9251, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35858:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9243, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "35842:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35842:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9253, + "nodeType": "ExpressionStatement", + "src": "35842:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35757:3:4", + "parameters": { + "id": 9241, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9234, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35775:2:4", + "nodeType": "VariableDeclaration", + "scope": 9255, + "src": "35761:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9233, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35761:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9236, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35793:2:4", + "nodeType": "VariableDeclaration", + "scope": 9255, + "src": "35779:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9235, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35779:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9238, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35802:2:4", + "nodeType": "VariableDeclaration", + "scope": 9255, + "src": "35797:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9237, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35797:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9240, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35814:2:4", + "nodeType": "VariableDeclaration", + "scope": 9255, + "src": "35806:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9239, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35806:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "35760:57:4" + }, + "returnParameters": { + "id": 9242, + "nodeType": "ParameterList", + "parameters": [], + "src": "35832:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9278, + "nodeType": "FunctionDefinition", + "src": "35946:192:4", + "body": { + "id": 9277, + "nodeType": "Block", + "src": "36030:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c75696e7429", + "id": 9269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36080:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a81a56a33247069679e8b6a463a3b29deb4b1020ce6e03b978132074cad28c2", + "typeString": "literal_string \"log(string,string,address,uint)\"" + }, + "value": "log(string,string,address,uint)" + }, + { + "id": 9270, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9257, + "src": "36115:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9271, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9259, + "src": "36119:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9272, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9261, + "src": "36123:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9273, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9263, + "src": "36127:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a81a56a33247069679e8b6a463a3b29deb4b1020ce6e03b978132074cad28c2", + "typeString": "literal_string \"log(string,string,address,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9267, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36056:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36056:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9274, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36056:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9266, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "36040:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36040:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9276, + "nodeType": "ExpressionStatement", + "src": "36040:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35955:3:4", + "parameters": { + "id": 9264, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9257, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35973:2:4", + "nodeType": "VariableDeclaration", + "scope": 9278, + "src": "35959:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9256, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35959:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9259, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35991:2:4", + "nodeType": "VariableDeclaration", + "scope": 9278, + "src": "35977:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9258, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35977:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9261, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36003:2:4", + "nodeType": "VariableDeclaration", + "scope": 9278, + "src": "35995:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9260, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35995:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9263, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36012:2:4", + "nodeType": "VariableDeclaration", + "scope": 9278, + "src": "36007:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9262, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "36007:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35958:57:4" + }, + "returnParameters": { + "id": 9265, + "nodeType": "ParameterList", + "parameters": [], + "src": "36030:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9301, + "nodeType": "FunctionDefinition", + "src": "36144:203:4", + "body": { + "id": 9300, + "nodeType": "Block", + "src": "36237:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c737472696e6729", + "id": 9292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36287:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + "value": "log(string,string,address,string)" + }, + { + "id": 9293, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9280, + "src": "36324:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9294, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9282, + "src": "36328:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9295, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9284, + "src": "36332:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9296, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9286, + "src": "36336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9290, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36263:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9291, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36263:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36263:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9289, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "36247:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36247:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9299, + "nodeType": "ExpressionStatement", + "src": "36247:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36153:3:4", + "parameters": { + "id": 9287, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9280, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36171:2:4", + "nodeType": "VariableDeclaration", + "scope": 9301, + "src": "36157:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9279, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36157:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9282, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36189:2:4", + "nodeType": "VariableDeclaration", + "scope": 9301, + "src": "36175:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9281, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36175:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9284, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36201:2:4", + "nodeType": "VariableDeclaration", + "scope": 9301, + "src": "36193:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9283, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36193:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9286, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36219:2:4", + "nodeType": "VariableDeclaration", + "scope": 9301, + "src": "36205:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9285, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36205:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36156:66:4" + }, + "returnParameters": { + "id": 9288, + "nodeType": "ParameterList", + "parameters": [], + "src": "36237:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9324, + "nodeType": "FunctionDefinition", + "src": "36353:192:4", + "body": { + "id": 9323, + "nodeType": "Block", + "src": "36437:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c626f6f6c29", + "id": 9315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36487:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + "value": "log(string,string,address,bool)" + }, + { + "id": 9316, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9303, + "src": "36522:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9317, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9305, + "src": "36526:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9318, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9307, + "src": "36530:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9319, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9309, + "src": "36534:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9313, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36463:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36463:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36463:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9312, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "36447:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36447:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9322, + "nodeType": "ExpressionStatement", + "src": "36447:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36362:3:4", + "parameters": { + "id": 9310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9303, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36380:2:4", + "nodeType": "VariableDeclaration", + "scope": 9324, + "src": "36366:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9302, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36366:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9305, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36398:2:4", + "nodeType": "VariableDeclaration", + "scope": 9324, + "src": "36384:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9304, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36384:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9307, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36410:2:4", + "nodeType": "VariableDeclaration", + "scope": 9324, + "src": "36402:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9306, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36402:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9309, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36419:2:4", + "nodeType": "VariableDeclaration", + "scope": 9324, + "src": "36414:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9308, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36414:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "36365:57:4" + }, + "returnParameters": { + "id": 9311, + "nodeType": "ParameterList", + "parameters": [], + "src": "36437:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9347, + "nodeType": "FunctionDefinition", + "src": "36551:198:4", + "body": { + "id": 9346, + "nodeType": "Block", + "src": "36638:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c6164647265737329", + "id": 9338, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36688:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + "value": "log(string,string,address,address)" + }, + { + "id": 9339, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9326, + "src": "36726:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9340, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9328, + "src": "36730:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9341, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9330, + "src": "36734:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9342, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9332, + "src": "36738:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9336, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36664:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36664:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9343, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36664:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9335, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "36648:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36648:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9345, + "nodeType": "ExpressionStatement", + "src": "36648:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36560:3:4", + "parameters": { + "id": 9333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9326, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36578:2:4", + "nodeType": "VariableDeclaration", + "scope": 9347, + "src": "36564:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9325, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36564:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9328, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36596:2:4", + "nodeType": "VariableDeclaration", + "scope": 9347, + "src": "36582:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9327, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36582:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9330, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36608:2:4", + "nodeType": "VariableDeclaration", + "scope": 9347, + "src": "36600:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9329, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36600:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9332, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36620:2:4", + "nodeType": "VariableDeclaration", + "scope": 9347, + "src": "36612:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9331, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36612:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "36563:60:4" + }, + "returnParameters": { + "id": 9334, + "nodeType": "ParameterList", + "parameters": [], + "src": "36638:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9370, + "nodeType": "FunctionDefinition", + "src": "36755:175:4", + "body": { + "id": 9369, + "nodeType": "Block", + "src": "36827:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e742c75696e7429", + "id": 9361, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36877:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5dbff038873b5f716761e9dcaab0713a903ceaebb2ba8c30b199c4dc534f7701", + "typeString": "literal_string \"log(string,bool,uint,uint)\"" + }, + "value": "log(string,bool,uint,uint)" + }, + { + "id": 9362, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9349, + "src": "36907:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9363, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9351, + "src": "36911:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9364, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9353, + "src": "36915:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9365, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9355, + "src": "36919:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5dbff038873b5f716761e9dcaab0713a903ceaebb2ba8c30b199c4dc534f7701", + "typeString": "literal_string \"log(string,bool,uint,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9359, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36853:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36853:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9366, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36853:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9358, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "36837:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36837:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9368, + "nodeType": "ExpressionStatement", + "src": "36837:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36764:3:4", + "parameters": { + "id": 9356, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9349, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36782:2:4", + "nodeType": "VariableDeclaration", + "scope": 9370, + "src": "36768:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9348, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36768:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9351, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36791:2:4", + "nodeType": "VariableDeclaration", + "scope": 9370, + "src": "36786:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9350, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36786:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9353, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36800:2:4", + "nodeType": "VariableDeclaration", + "scope": 9370, + "src": "36795:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9352, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "36795:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9355, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36809:2:4", + "nodeType": "VariableDeclaration", + "scope": 9370, + "src": "36804:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9354, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "36804:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "36767:45:4" + }, + "returnParameters": { + "id": 9357, + "nodeType": "ParameterList", + "parameters": [], + "src": "36827:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9393, + "nodeType": "FunctionDefinition", + "src": "36936:186:4", + "body": { + "id": 9392, + "nodeType": "Block", + "src": "37017:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e742c737472696e6729", + "id": 9384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37067:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42b9a2274d0e9ab9211da679bc79f433c4055060036260a350e95cf10b9004ee", + "typeString": "literal_string \"log(string,bool,uint,string)\"" + }, + "value": "log(string,bool,uint,string)" + }, + { + "id": 9385, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9372, + "src": "37099:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9386, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9374, + "src": "37103:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9387, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9376, + "src": "37107:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9388, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9378, + "src": "37111:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42b9a2274d0e9ab9211da679bc79f433c4055060036260a350e95cf10b9004ee", + "typeString": "literal_string \"log(string,bool,uint,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9382, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37043:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37043:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9389, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37043:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9381, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37027:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37027:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9391, + "nodeType": "ExpressionStatement", + "src": "37027:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36945:3:4", + "parameters": { + "id": 9379, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9372, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36963:2:4", + "nodeType": "VariableDeclaration", + "scope": 9393, + "src": "36949:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9371, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36949:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9374, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36972:2:4", + "nodeType": "VariableDeclaration", + "scope": 9393, + "src": "36967:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9373, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36967:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9376, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36981:2:4", + "nodeType": "VariableDeclaration", + "scope": 9393, + "src": "36976:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9375, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "36976:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9378, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36999:2:4", + "nodeType": "VariableDeclaration", + "scope": 9393, + "src": "36985:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9377, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36985:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36948:54:4" + }, + "returnParameters": { + "id": 9380, + "nodeType": "ParameterList", + "parameters": [], + "src": "37017:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9416, + "nodeType": "FunctionDefinition", + "src": "37128:175:4", + "body": { + "id": 9415, + "nodeType": "Block", + "src": "37200:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e742c626f6f6c29", + "id": 9407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37250:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3cc5b5d38fa67d61ad4f760e2dab344ea54d36d39a7b72ff747c1e117e2289bb", + "typeString": "literal_string \"log(string,bool,uint,bool)\"" + }, + "value": "log(string,bool,uint,bool)" + }, + { + "id": 9408, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9395, + "src": "37280:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9409, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9397, + "src": "37284:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9410, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9399, + "src": "37288:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9411, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9401, + "src": "37292:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3cc5b5d38fa67d61ad4f760e2dab344ea54d36d39a7b72ff747c1e117e2289bb", + "typeString": "literal_string \"log(string,bool,uint,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9405, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37226:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9406, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37226:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9412, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37226:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9404, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37210:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37210:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9414, + "nodeType": "ExpressionStatement", + "src": "37210:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37137:3:4", + "parameters": { + "id": 9402, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9395, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37155:2:4", + "nodeType": "VariableDeclaration", + "scope": 9416, + "src": "37141:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9394, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37141:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9397, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37164:2:4", + "nodeType": "VariableDeclaration", + "scope": 9416, + "src": "37159:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37159:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9399, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37173:2:4", + "nodeType": "VariableDeclaration", + "scope": 9416, + "src": "37168:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9398, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "37168:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9401, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37182:2:4", + "nodeType": "VariableDeclaration", + "scope": 9416, + "src": "37177:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9400, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37177:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "37140:45:4" + }, + "returnParameters": { + "id": 9403, + "nodeType": "ParameterList", + "parameters": [], + "src": "37200:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9439, + "nodeType": "FunctionDefinition", + "src": "37309:181:4", + "body": { + "id": 9438, + "nodeType": "Block", + "src": "37384:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e742c6164647265737329", + "id": 9430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37434:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_71d3850da171f493bcf1bd9faa0694f71484214d8459bca427251a9ad3e9bbd6", + "typeString": "literal_string \"log(string,bool,uint,address)\"" + }, + "value": "log(string,bool,uint,address)" + }, + { + "id": 9431, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9418, + "src": "37467:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9432, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9420, + "src": "37471:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9433, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9422, + "src": "37475:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9434, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9424, + "src": "37479:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_71d3850da171f493bcf1bd9faa0694f71484214d8459bca427251a9ad3e9bbd6", + "typeString": "literal_string \"log(string,bool,uint,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9428, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37410:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9429, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37410:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37410:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9427, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37394:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37394:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9437, + "nodeType": "ExpressionStatement", + "src": "37394:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37318:3:4", + "parameters": { + "id": 9425, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9418, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37336:2:4", + "nodeType": "VariableDeclaration", + "scope": 9439, + "src": "37322:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9417, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37322:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9420, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37345:2:4", + "nodeType": "VariableDeclaration", + "scope": 9439, + "src": "37340:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9419, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37340:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9422, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37354:2:4", + "nodeType": "VariableDeclaration", + "scope": 9439, + "src": "37349:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9421, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "37349:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9424, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37366:2:4", + "nodeType": "VariableDeclaration", + "scope": 9439, + "src": "37358:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9423, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37358:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "37321:48:4" + }, + "returnParameters": { + "id": 9426, + "nodeType": "ParameterList", + "parameters": [], + "src": "37384:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9462, + "nodeType": "FunctionDefinition", + "src": "37496:186:4", + "body": { + "id": 9461, + "nodeType": "Block", + "src": "37577:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c75696e7429", + "id": 9453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37627:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_34cb308d42fc37e3a239bcd0d717cf3713a336733737bee1d82ac9061e969d72", + "typeString": "literal_string \"log(string,bool,string,uint)\"" + }, + "value": "log(string,bool,string,uint)" + }, + { + "id": 9454, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9441, + "src": "37659:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9455, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9443, + "src": "37663:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9456, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9445, + "src": "37667:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9457, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9447, + "src": "37671:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_34cb308d42fc37e3a239bcd0d717cf3713a336733737bee1d82ac9061e969d72", + "typeString": "literal_string \"log(string,bool,string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9451, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37603:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9452, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37603:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9458, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37603:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9450, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37587:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37587:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9460, + "nodeType": "ExpressionStatement", + "src": "37587:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37505:3:4", + "parameters": { + "id": 9448, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9441, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37523:2:4", + "nodeType": "VariableDeclaration", + "scope": 9462, + "src": "37509:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9440, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37509:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9443, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37532:2:4", + "nodeType": "VariableDeclaration", + "scope": 9462, + "src": "37527:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9442, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37527:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9445, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37550:2:4", + "nodeType": "VariableDeclaration", + "scope": 9462, + "src": "37536:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9444, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37536:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9447, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37559:2:4", + "nodeType": "VariableDeclaration", + "scope": 9462, + "src": "37554:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9446, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "37554:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "37508:54:4" + }, + "returnParameters": { + "id": 9449, + "nodeType": "ParameterList", + "parameters": [], + "src": "37577:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9485, + "nodeType": "FunctionDefinition", + "src": "37688:197:4", + "body": { + "id": 9484, + "nodeType": "Block", + "src": "37778:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c737472696e6729", + "id": 9476, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37828:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + "value": "log(string,bool,string,string)" + }, + { + "id": 9477, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9464, + "src": "37862:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9478, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9466, + "src": "37866:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9479, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9468, + "src": "37870:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9480, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9470, + "src": "37874:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9474, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37804:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37804:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37804:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9473, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37788:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37788:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9483, + "nodeType": "ExpressionStatement", + "src": "37788:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37697:3:4", + "parameters": { + "id": 9471, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9464, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37715:2:4", + "nodeType": "VariableDeclaration", + "scope": 9485, + "src": "37701:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9463, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37701:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9466, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37724:2:4", + "nodeType": "VariableDeclaration", + "scope": 9485, + "src": "37719:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9465, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37719:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9468, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37742:2:4", + "nodeType": "VariableDeclaration", + "scope": 9485, + "src": "37728:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9467, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37728:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9470, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37760:2:4", + "nodeType": "VariableDeclaration", + "scope": 9485, + "src": "37746:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9469, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37746:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "37700:63:4" + }, + "returnParameters": { + "id": 9472, + "nodeType": "ParameterList", + "parameters": [], + "src": "37778:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9508, + "nodeType": "FunctionDefinition", + "src": "37891:186:4", + "body": { + "id": 9507, + "nodeType": "Block", + "src": "37972:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c626f6f6c29", + "id": 9499, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38022:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + "value": "log(string,bool,string,bool)" + }, + { + "id": 9500, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9487, + "src": "38054:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9501, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9489, + "src": "38058:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9502, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9491, + "src": "38062:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9503, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9493, + "src": "38066:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9497, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37998:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9498, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37998:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37998:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9496, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "37982:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37982:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9506, + "nodeType": "ExpressionStatement", + "src": "37982:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37900:3:4", + "parameters": { + "id": 9494, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9487, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37918:2:4", + "nodeType": "VariableDeclaration", + "scope": 9508, + "src": "37904:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9486, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37904:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9489, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37927:2:4", + "nodeType": "VariableDeclaration", + "scope": 9508, + "src": "37922:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9488, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37922:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9491, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37945:2:4", + "nodeType": "VariableDeclaration", + "scope": 9508, + "src": "37931:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9490, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37931:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9493, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37954:2:4", + "nodeType": "VariableDeclaration", + "scope": 9508, + "src": "37949:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9492, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37949:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "37903:54:4" + }, + "returnParameters": { + "id": 9495, + "nodeType": "ParameterList", + "parameters": [], + "src": "37972:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9531, + "nodeType": "FunctionDefinition", + "src": "38083:192:4", + "body": { + "id": 9530, + "nodeType": "Block", + "src": "38167:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c6164647265737329", + "id": 9522, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38217:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + "value": "log(string,bool,string,address)" + }, + { + "id": 9523, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9510, + "src": "38252:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9524, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9512, + "src": "38256:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9525, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9514, + "src": "38260:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9526, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9516, + "src": "38264:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9520, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38193:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9521, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38193:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38193:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9519, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "38177:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38177:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9529, + "nodeType": "ExpressionStatement", + "src": "38177:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38092:3:4", + "parameters": { + "id": 9517, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9510, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38110:2:4", + "nodeType": "VariableDeclaration", + "scope": 9531, + "src": "38096:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9509, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38096:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9512, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38119:2:4", + "nodeType": "VariableDeclaration", + "scope": 9531, + "src": "38114:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9511, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38114:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9514, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38137:2:4", + "nodeType": "VariableDeclaration", + "scope": 9531, + "src": "38123:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9513, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38123:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9516, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38149:2:4", + "nodeType": "VariableDeclaration", + "scope": 9531, + "src": "38141:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9515, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38141:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38095:57:4" + }, + "returnParameters": { + "id": 9518, + "nodeType": "ParameterList", + "parameters": [], + "src": "38167:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9554, + "nodeType": "FunctionDefinition", + "src": "38281:175:4", + "body": { + "id": 9553, + "nodeType": "Block", + "src": "38353:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c75696e7429", + "id": 9545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38403:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_807531e8eafdd7a15a803e586dd9a01b2aa8ae2cdd52f093775c0dcb0c977edf", + "typeString": "literal_string \"log(string,bool,bool,uint)\"" + }, + "value": "log(string,bool,bool,uint)" + }, + { + "id": 9546, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9533, + "src": "38433:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9547, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9535, + "src": "38437:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9548, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9537, + "src": "38441:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9549, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9539, + "src": "38445:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_807531e8eafdd7a15a803e586dd9a01b2aa8ae2cdd52f093775c0dcb0c977edf", + "typeString": "literal_string \"log(string,bool,bool,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9543, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38379:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9544, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38379:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38379:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9542, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "38363:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38363:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9552, + "nodeType": "ExpressionStatement", + "src": "38363:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38290:3:4", + "parameters": { + "id": 9540, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9533, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38308:2:4", + "nodeType": "VariableDeclaration", + "scope": 9554, + "src": "38294:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9532, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38294:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9535, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38317:2:4", + "nodeType": "VariableDeclaration", + "scope": 9554, + "src": "38312:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9534, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38312:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9537, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38326:2:4", + "nodeType": "VariableDeclaration", + "scope": 9554, + "src": "38321:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9536, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38321:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9539, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38335:2:4", + "nodeType": "VariableDeclaration", + "scope": 9554, + "src": "38330:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9538, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "38330:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "38293:45:4" + }, + "returnParameters": { + "id": 9541, + "nodeType": "ParameterList", + "parameters": [], + "src": "38353:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9577, + "nodeType": "FunctionDefinition", + "src": "38462:186:4", + "body": { + "id": 9576, + "nodeType": "Block", + "src": "38543:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c737472696e6729", + "id": 9568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38593:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + "value": "log(string,bool,bool,string)" + }, + { + "id": 9569, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9556, + "src": "38625:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9570, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9558, + "src": "38629:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9571, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9560, + "src": "38633:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9572, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9562, + "src": "38637:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9566, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38569:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38569:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38569:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9565, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "38553:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38553:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9575, + "nodeType": "ExpressionStatement", + "src": "38553:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38471:3:4", + "parameters": { + "id": 9563, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9556, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38489:2:4", + "nodeType": "VariableDeclaration", + "scope": 9577, + "src": "38475:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9555, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38475:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9558, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38498:2:4", + "nodeType": "VariableDeclaration", + "scope": 9577, + "src": "38493:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9557, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38493:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9560, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38507:2:4", + "nodeType": "VariableDeclaration", + "scope": 9577, + "src": "38502:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9559, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38502:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9562, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38525:2:4", + "nodeType": "VariableDeclaration", + "scope": 9577, + "src": "38511:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9561, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38511:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "38474:54:4" + }, + "returnParameters": { + "id": 9564, + "nodeType": "ParameterList", + "parameters": [], + "src": "38543:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9600, + "nodeType": "FunctionDefinition", + "src": "38654:175:4", + "body": { + "id": 9599, + "nodeType": "Block", + "src": "38726:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 9591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38776:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + "value": "log(string,bool,bool,bool)" + }, + { + "id": 9592, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9579, + "src": "38806:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9593, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9581, + "src": "38810:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9594, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9583, + "src": "38814:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9595, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9585, + "src": "38818:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9589, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38752:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38752:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38752:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9588, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "38736:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38736:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9598, + "nodeType": "ExpressionStatement", + "src": "38736:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38663:3:4", + "parameters": { + "id": 9586, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9579, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38681:2:4", + "nodeType": "VariableDeclaration", + "scope": 9600, + "src": "38667:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9578, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38667:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9581, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38690:2:4", + "nodeType": "VariableDeclaration", + "scope": 9600, + "src": "38685:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9580, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38685:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9583, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38699:2:4", + "nodeType": "VariableDeclaration", + "scope": 9600, + "src": "38694:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9582, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38694:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9585, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38708:2:4", + "nodeType": "VariableDeclaration", + "scope": 9600, + "src": "38703:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9584, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38703:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38666:45:4" + }, + "returnParameters": { + "id": 9587, + "nodeType": "ParameterList", + "parameters": [], + "src": "38726:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9623, + "nodeType": "FunctionDefinition", + "src": "38835:181:4", + "body": { + "id": 9622, + "nodeType": "Block", + "src": "38910:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c6164647265737329", + "id": 9614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38960:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + "value": "log(string,bool,bool,address)" + }, + { + "id": 9615, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9602, + "src": "38993:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9616, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9604, + "src": "38997:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9617, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9606, + "src": "39001:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9618, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9608, + "src": "39005:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9612, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38936:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9613, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38936:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38936:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9611, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "38920:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38920:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9621, + "nodeType": "ExpressionStatement", + "src": "38920:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38844:3:4", + "parameters": { + "id": 9609, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9602, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38862:2:4", + "nodeType": "VariableDeclaration", + "scope": 9623, + "src": "38848:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9601, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38848:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9604, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38871:2:4", + "nodeType": "VariableDeclaration", + "scope": 9623, + "src": "38866:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9603, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38866:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9606, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38880:2:4", + "nodeType": "VariableDeclaration", + "scope": 9623, + "src": "38875:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9605, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38875:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9608, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38892:2:4", + "nodeType": "VariableDeclaration", + "scope": 9623, + "src": "38884:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9607, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38884:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38847:48:4" + }, + "returnParameters": { + "id": 9610, + "nodeType": "ParameterList", + "parameters": [], + "src": "38910:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9646, + "nodeType": "FunctionDefinition", + "src": "39022:181:4", + "body": { + "id": 9645, + "nodeType": "Block", + "src": "39097:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c75696e7429", + "id": 9637, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39147:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_28df4e96d50017c69e64253ea877c992512b689fb9fed17cf6af78f104f1200b", + "typeString": "literal_string \"log(string,bool,address,uint)\"" + }, + "value": "log(string,bool,address,uint)" + }, + { + "id": 9638, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9625, + "src": "39180:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9639, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9627, + "src": "39184:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9640, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9629, + "src": "39188:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9641, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9631, + "src": "39192:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_28df4e96d50017c69e64253ea877c992512b689fb9fed17cf6af78f104f1200b", + "typeString": "literal_string \"log(string,bool,address,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9635, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39123:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9636, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39123:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39123:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9634, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "39107:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39107:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9644, + "nodeType": "ExpressionStatement", + "src": "39107:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39031:3:4", + "parameters": { + "id": 9632, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9625, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39049:2:4", + "nodeType": "VariableDeclaration", + "scope": 9646, + "src": "39035:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9624, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39035:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9627, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39058:2:4", + "nodeType": "VariableDeclaration", + "scope": 9646, + "src": "39053:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9626, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39053:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9629, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39070:2:4", + "nodeType": "VariableDeclaration", + "scope": 9646, + "src": "39062:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9628, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39062:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9631, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39079:2:4", + "nodeType": "VariableDeclaration", + "scope": 9646, + "src": "39074:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9630, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "39074:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39034:48:4" + }, + "returnParameters": { + "id": 9633, + "nodeType": "ParameterList", + "parameters": [], + "src": "39097:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9669, + "nodeType": "FunctionDefinition", + "src": "39209:192:4", + "body": { + "id": 9668, + "nodeType": "Block", + "src": "39293:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c737472696e6729", + "id": 9660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39343:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + "value": "log(string,bool,address,string)" + }, + { + "id": 9661, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9648, + "src": "39378:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9662, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9650, + "src": "39382:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9663, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9652, + "src": "39386:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9664, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9654, + "src": "39390:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9658, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39319:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9659, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39319:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39319:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9657, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "39303:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39303:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9667, + "nodeType": "ExpressionStatement", + "src": "39303:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39218:3:4", + "parameters": { + "id": 9655, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9648, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39236:2:4", + "nodeType": "VariableDeclaration", + "scope": 9669, + "src": "39222:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9647, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39222:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9650, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39245:2:4", + "nodeType": "VariableDeclaration", + "scope": 9669, + "src": "39240:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9649, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39240:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9652, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39257:2:4", + "nodeType": "VariableDeclaration", + "scope": 9669, + "src": "39249:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9651, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39249:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9654, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39275:2:4", + "nodeType": "VariableDeclaration", + "scope": 9669, + "src": "39261:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9653, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39261:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "39221:57:4" + }, + "returnParameters": { + "id": 9656, + "nodeType": "ParameterList", + "parameters": [], + "src": "39293:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9692, + "nodeType": "FunctionDefinition", + "src": "39407:181:4", + "body": { + "id": 9691, + "nodeType": "Block", + "src": "39482:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c626f6f6c29", + "id": 9683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39532:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + "value": "log(string,bool,address,bool)" + }, + { + "id": 9684, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9671, + "src": "39565:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9685, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9673, + "src": "39569:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9686, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9675, + "src": "39573:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9687, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9677, + "src": "39577:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9681, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39508:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9682, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39508:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39508:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9680, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "39492:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39492:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9690, + "nodeType": "ExpressionStatement", + "src": "39492:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39416:3:4", + "parameters": { + "id": 9678, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9671, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39434:2:4", + "nodeType": "VariableDeclaration", + "scope": 9692, + "src": "39420:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9670, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39420:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9673, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39443:2:4", + "nodeType": "VariableDeclaration", + "scope": 9692, + "src": "39438:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9672, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39438:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9675, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39455:2:4", + "nodeType": "VariableDeclaration", + "scope": 9692, + "src": "39447:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9674, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39447:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9677, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39464:2:4", + "nodeType": "VariableDeclaration", + "scope": 9692, + "src": "39459:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9676, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39459:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "39419:48:4" + }, + "returnParameters": { + "id": 9679, + "nodeType": "ParameterList", + "parameters": [], + "src": "39482:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9715, + "nodeType": "FunctionDefinition", + "src": "39594:187:4", + "body": { + "id": 9714, + "nodeType": "Block", + "src": "39672:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c6164647265737329", + "id": 9706, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39722:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + "value": "log(string,bool,address,address)" + }, + { + "id": 9707, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9694, + "src": "39758:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9708, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9696, + "src": "39762:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9709, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9698, + "src": "39766:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9710, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9700, + "src": "39770:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9704, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39698:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9705, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39698:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39698:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9703, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "39682:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39682:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9713, + "nodeType": "ExpressionStatement", + "src": "39682:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39603:3:4", + "parameters": { + "id": 9701, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9694, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39621:2:4", + "nodeType": "VariableDeclaration", + "scope": 9715, + "src": "39607:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9693, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39607:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9696, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39630:2:4", + "nodeType": "VariableDeclaration", + "scope": 9715, + "src": "39625:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9695, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39625:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9698, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39642:2:4", + "nodeType": "VariableDeclaration", + "scope": 9715, + "src": "39634:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9697, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39634:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9700, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39654:2:4", + "nodeType": "VariableDeclaration", + "scope": 9715, + "src": "39646:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9699, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39646:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "39606:51:4" + }, + "returnParameters": { + "id": 9702, + "nodeType": "ParameterList", + "parameters": [], + "src": "39672:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9738, + "nodeType": "FunctionDefinition", + "src": "39787:181:4", + "body": { + "id": 9737, + "nodeType": "Block", + "src": "39862:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e742c75696e7429", + "id": 9729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39912:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_daa394bd4914eaece965f4173c7699746dff411e470b03385f052bd7b13f1bd3", + "typeString": "literal_string \"log(string,address,uint,uint)\"" + }, + "value": "log(string,address,uint,uint)" + }, + { + "id": 9730, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9717, + "src": "39945:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9731, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9719, + "src": "39949:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9732, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9721, + "src": "39953:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9733, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9723, + "src": "39957:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_daa394bd4914eaece965f4173c7699746dff411e470b03385f052bd7b13f1bd3", + "typeString": "literal_string \"log(string,address,uint,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39888:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39888:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9734, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39888:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9726, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "39872:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39872:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9736, + "nodeType": "ExpressionStatement", + "src": "39872:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39796:3:4", + "parameters": { + "id": 9724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9717, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39814:2:4", + "nodeType": "VariableDeclaration", + "scope": 9738, + "src": "39800:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9716, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39800:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9719, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39826:2:4", + "nodeType": "VariableDeclaration", + "scope": 9738, + "src": "39818:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9718, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39818:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9721, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39835:2:4", + "nodeType": "VariableDeclaration", + "scope": 9738, + "src": "39830:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9720, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "39830:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9723, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39844:2:4", + "nodeType": "VariableDeclaration", + "scope": 9738, + "src": "39839:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9722, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "39839:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39799:48:4" + }, + "returnParameters": { + "id": 9725, + "nodeType": "ParameterList", + "parameters": [], + "src": "39862:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9761, + "nodeType": "FunctionDefinition", + "src": "39974:192:4", + "body": { + "id": 9760, + "nodeType": "Block", + "src": "40058:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e742c737472696e6729", + "id": 9752, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40108:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4c55f234d048f08e770926729ee5d8a9c70d6b9a607ce037165c7e0f36155a98", + "typeString": "literal_string \"log(string,address,uint,string)\"" + }, + "value": "log(string,address,uint,string)" + }, + { + "id": 9753, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9740, + "src": "40143:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9754, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9742, + "src": "40147:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9755, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9744, + "src": "40151:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9756, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9746, + "src": "40155:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4c55f234d048f08e770926729ee5d8a9c70d6b9a607ce037165c7e0f36155a98", + "typeString": "literal_string \"log(string,address,uint,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9750, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40084:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9751, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40084:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9757, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40084:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9749, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "40068:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40068:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9759, + "nodeType": "ExpressionStatement", + "src": "40068:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39983:3:4", + "parameters": { + "id": 9747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9740, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40001:2:4", + "nodeType": "VariableDeclaration", + "scope": 9761, + "src": "39987:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9739, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39987:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9742, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40013:2:4", + "nodeType": "VariableDeclaration", + "scope": 9761, + "src": "40005:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40005:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9744, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40022:2:4", + "nodeType": "VariableDeclaration", + "scope": 9761, + "src": "40017:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9743, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "40017:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9746, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40040:2:4", + "nodeType": "VariableDeclaration", + "scope": 9761, + "src": "40026:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9745, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40026:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "39986:57:4" + }, + "returnParameters": { + "id": 9748, + "nodeType": "ParameterList", + "parameters": [], + "src": "40058:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9784, + "nodeType": "FunctionDefinition", + "src": "40172:181:4", + "body": { + "id": 9783, + "nodeType": "Block", + "src": "40247:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e742c626f6f6c29", + "id": 9775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40297:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ac1c13c91f65a91284d9d77ba7484e75b0a3dd9b57a01fd497babb7d6ebc554", + "typeString": "literal_string \"log(string,address,uint,bool)\"" + }, + "value": "log(string,address,uint,bool)" + }, + { + "id": 9776, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9763, + "src": "40330:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9777, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9765, + "src": "40334:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9778, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9767, + "src": "40338:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9779, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9769, + "src": "40342:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ac1c13c91f65a91284d9d77ba7484e75b0a3dd9b57a01fd497babb7d6ebc554", + "typeString": "literal_string \"log(string,address,uint,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9773, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40273:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40273:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40273:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9772, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "40257:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40257:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9782, + "nodeType": "ExpressionStatement", + "src": "40257:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40181:3:4", + "parameters": { + "id": 9770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9763, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40199:2:4", + "nodeType": "VariableDeclaration", + "scope": 9784, + "src": "40185:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9762, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40185:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9765, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40211:2:4", + "nodeType": "VariableDeclaration", + "scope": 9784, + "src": "40203:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9764, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40203:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9767, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40220:2:4", + "nodeType": "VariableDeclaration", + "scope": 9784, + "src": "40215:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9766, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "40215:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9769, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40229:2:4", + "nodeType": "VariableDeclaration", + "scope": 9784, + "src": "40224:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9768, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40224:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "40184:48:4" + }, + "returnParameters": { + "id": 9771, + "nodeType": "ParameterList", + "parameters": [], + "src": "40247:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9807, + "nodeType": "FunctionDefinition", + "src": "40359:187:4", + "body": { + "id": 9806, + "nodeType": "Block", + "src": "40437:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e742c6164647265737329", + "id": 9798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40487:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a366ec808c8af1aa091e8102642939a99436cf04d3dfac2ae23c299404f821b2", + "typeString": "literal_string \"log(string,address,uint,address)\"" + }, + "value": "log(string,address,uint,address)" + }, + { + "id": 9799, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9786, + "src": "40523:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9800, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9788, + "src": "40527:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9801, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9790, + "src": "40531:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 9802, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9792, + "src": "40535:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a366ec808c8af1aa091e8102642939a99436cf04d3dfac2ae23c299404f821b2", + "typeString": "literal_string \"log(string,address,uint,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9796, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40463:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40463:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9803, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40463:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9795, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "40447:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40447:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9805, + "nodeType": "ExpressionStatement", + "src": "40447:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40368:3:4", + "parameters": { + "id": 9793, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9786, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40386:2:4", + "nodeType": "VariableDeclaration", + "scope": 9807, + "src": "40372:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9785, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40372:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9788, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40398:2:4", + "nodeType": "VariableDeclaration", + "scope": 9807, + "src": "40390:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9787, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40390:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9790, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40407:2:4", + "nodeType": "VariableDeclaration", + "scope": 9807, + "src": "40402:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9789, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "40402:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9792, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40419:2:4", + "nodeType": "VariableDeclaration", + "scope": 9807, + "src": "40411:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9791, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40411:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "40371:51:4" + }, + "returnParameters": { + "id": 9794, + "nodeType": "ParameterList", + "parameters": [], + "src": "40437:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9830, + "nodeType": "FunctionDefinition", + "src": "40552:192:4", + "body": { + "id": 9829, + "nodeType": "Block", + "src": "40636:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c75696e7429", + "id": 9821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40686:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f624be9ea3983abac9c65ced8f562a492ebb84e6f74cd40f35387eff4d66349", + "typeString": "literal_string \"log(string,address,string,uint)\"" + }, + "value": "log(string,address,string,uint)" + }, + { + "id": 9822, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9809, + "src": "40721:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9823, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9811, + "src": "40725:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9824, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9813, + "src": "40729:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9825, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9815, + "src": "40733:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f624be9ea3983abac9c65ced8f562a492ebb84e6f74cd40f35387eff4d66349", + "typeString": "literal_string \"log(string,address,string,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9819, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40662:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40662:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9826, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40662:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9818, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "40646:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40646:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9828, + "nodeType": "ExpressionStatement", + "src": "40646:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40561:3:4", + "parameters": { + "id": 9816, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9809, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40579:2:4", + "nodeType": "VariableDeclaration", + "scope": 9830, + "src": "40565:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9808, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40565:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9811, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40591:2:4", + "nodeType": "VariableDeclaration", + "scope": 9830, + "src": "40583:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9810, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40583:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9813, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40609:2:4", + "nodeType": "VariableDeclaration", + "scope": 9830, + "src": "40595:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9812, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40595:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9815, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40618:2:4", + "nodeType": "VariableDeclaration", + "scope": 9830, + "src": "40613:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9814, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "40613:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "40564:57:4" + }, + "returnParameters": { + "id": 9817, + "nodeType": "ParameterList", + "parameters": [], + "src": "40636:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9853, + "nodeType": "FunctionDefinition", + "src": "40750:203:4", + "body": { + "id": 9852, + "nodeType": "Block", + "src": "40843:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c737472696e6729", + "id": 9844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40893:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + "value": "log(string,address,string,string)" + }, + { + "id": 9845, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9832, + "src": "40930:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9846, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9834, + "src": "40934:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9847, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9836, + "src": "40938:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9848, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9838, + "src": "40942:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9842, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40869:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40869:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40869:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9841, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "40853:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40853:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9851, + "nodeType": "ExpressionStatement", + "src": "40853:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40759:3:4", + "parameters": { + "id": 9839, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9832, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40777:2:4", + "nodeType": "VariableDeclaration", + "scope": 9853, + "src": "40763:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9831, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40763:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9834, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40789:2:4", + "nodeType": "VariableDeclaration", + "scope": 9853, + "src": "40781:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9833, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40781:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9836, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40807:2:4", + "nodeType": "VariableDeclaration", + "scope": 9853, + "src": "40793:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9835, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40793:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9838, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40825:2:4", + "nodeType": "VariableDeclaration", + "scope": 9853, + "src": "40811:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9837, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40811:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "40762:66:4" + }, + "returnParameters": { + "id": 9840, + "nodeType": "ParameterList", + "parameters": [], + "src": "40843:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9876, + "nodeType": "FunctionDefinition", + "src": "40959:192:4", + "body": { + "id": 9875, + "nodeType": "Block", + "src": "41043:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c626f6f6c29", + "id": 9867, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41093:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + "value": "log(string,address,string,bool)" + }, + { + "id": 9868, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9855, + "src": "41128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9869, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9857, + "src": "41132:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9870, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9859, + "src": "41136:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9871, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9861, + "src": "41140:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9865, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41069:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9866, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41069:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41069:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9864, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "41053:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9873, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41053:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9874, + "nodeType": "ExpressionStatement", + "src": "41053:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40968:3:4", + "parameters": { + "id": 9862, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9855, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40986:2:4", + "nodeType": "VariableDeclaration", + "scope": 9876, + "src": "40972:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9854, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40972:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9857, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40998:2:4", + "nodeType": "VariableDeclaration", + "scope": 9876, + "src": "40990:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9856, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40990:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9859, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41016:2:4", + "nodeType": "VariableDeclaration", + "scope": 9876, + "src": "41002:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9858, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41002:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9861, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41025:2:4", + "nodeType": "VariableDeclaration", + "scope": 9876, + "src": "41020:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9860, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41020:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "40971:57:4" + }, + "returnParameters": { + "id": 9863, + "nodeType": "ParameterList", + "parameters": [], + "src": "41043:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9899, + "nodeType": "FunctionDefinition", + "src": "41157:198:4", + "body": { + "id": 9898, + "nodeType": "Block", + "src": "41244:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c6164647265737329", + "id": 9890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41294:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + "value": "log(string,address,string,address)" + }, + { + "id": 9891, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9878, + "src": "41332:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9892, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9880, + "src": "41336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9893, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9882, + "src": "41340:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9894, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9884, + "src": "41344:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9888, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41270:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9889, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41270:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41270:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9887, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "41254:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41254:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9897, + "nodeType": "ExpressionStatement", + "src": "41254:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41166:3:4", + "parameters": { + "id": 9885, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9878, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41184:2:4", + "nodeType": "VariableDeclaration", + "scope": 9899, + "src": "41170:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9877, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41170:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9880, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41196:2:4", + "nodeType": "VariableDeclaration", + "scope": 9899, + "src": "41188:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9879, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41188:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9882, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41214:2:4", + "nodeType": "VariableDeclaration", + "scope": 9899, + "src": "41200:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9881, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41200:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9884, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41226:2:4", + "nodeType": "VariableDeclaration", + "scope": 9899, + "src": "41218:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9883, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41218:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "41169:60:4" + }, + "returnParameters": { + "id": 9886, + "nodeType": "ParameterList", + "parameters": [], + "src": "41244:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9922, + "nodeType": "FunctionDefinition", + "src": "41361:181:4", + "body": { + "id": 9921, + "nodeType": "Block", + "src": "41436:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c75696e7429", + "id": 9913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41486:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d1bb8ba57e795e9925065473f653a381a99be37bdcfbeaf49f38097f35af7f", + "typeString": "literal_string \"log(string,address,bool,uint)\"" + }, + "value": "log(string,address,bool,uint)" + }, + { + "id": 9914, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9901, + "src": "41519:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9915, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9903, + "src": "41523:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9916, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9905, + "src": "41527:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9917, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9907, + "src": "41531:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d1bb8ba57e795e9925065473f653a381a99be37bdcfbeaf49f38097f35af7f", + "typeString": "literal_string \"log(string,address,bool,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 9911, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41462:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41462:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41462:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9910, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "41446:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41446:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9920, + "nodeType": "ExpressionStatement", + "src": "41446:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41370:3:4", + "parameters": { + "id": 9908, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9901, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41388:2:4", + "nodeType": "VariableDeclaration", + "scope": 9922, + "src": "41374:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9900, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41374:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9903, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41400:2:4", + "nodeType": "VariableDeclaration", + "scope": 9922, + "src": "41392:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9902, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41392:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9905, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41409:2:4", + "nodeType": "VariableDeclaration", + "scope": 9922, + "src": "41404:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9904, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41404:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9907, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41418:2:4", + "nodeType": "VariableDeclaration", + "scope": 9922, + "src": "41413:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9906, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "41413:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "41373:48:4" + }, + "returnParameters": { + "id": 9909, + "nodeType": "ParameterList", + "parameters": [], + "src": "41436:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9945, + "nodeType": "FunctionDefinition", + "src": "41548:192:4", + "body": { + "id": 9944, + "nodeType": "Block", + "src": "41632:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c737472696e6729", + "id": 9936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41682:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + "value": "log(string,address,bool,string)" + }, + { + "id": 9937, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9924, + "src": "41717:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9938, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9926, + "src": "41721:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9939, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9928, + "src": "41725:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9940, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9930, + "src": "41729:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 9934, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41658:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41658:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41658:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9933, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "41642:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41642:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9943, + "nodeType": "ExpressionStatement", + "src": "41642:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41557:3:4", + "parameters": { + "id": 9931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9924, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41575:2:4", + "nodeType": "VariableDeclaration", + "scope": 9945, + "src": "41561:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9923, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41561:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9926, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41587:2:4", + "nodeType": "VariableDeclaration", + "scope": 9945, + "src": "41579:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9925, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41579:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9928, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41596:2:4", + "nodeType": "VariableDeclaration", + "scope": 9945, + "src": "41591:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9927, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41591:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9930, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41614:2:4", + "nodeType": "VariableDeclaration", + "scope": 9945, + "src": "41600:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9929, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41600:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "41560:57:4" + }, + "returnParameters": { + "id": 9932, + "nodeType": "ParameterList", + "parameters": [], + "src": "41632:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9968, + "nodeType": "FunctionDefinition", + "src": "41746:181:4", + "body": { + "id": 9967, + "nodeType": "Block", + "src": "41821:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c626f6f6c29", + "id": 9959, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41871:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + "value": "log(string,address,bool,bool)" + }, + { + "id": 9960, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9947, + "src": "41904:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9961, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9949, + "src": "41908:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9962, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9951, + "src": "41912:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9963, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9953, + "src": "41916:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 9957, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41847:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41847:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41847:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9956, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "41831:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41831:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9966, + "nodeType": "ExpressionStatement", + "src": "41831:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41755:3:4", + "parameters": { + "id": 9954, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9947, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41773:2:4", + "nodeType": "VariableDeclaration", + "scope": 9968, + "src": "41759:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9946, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41759:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9949, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41785:2:4", + "nodeType": "VariableDeclaration", + "scope": 9968, + "src": "41777:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9948, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41777:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9951, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41794:2:4", + "nodeType": "VariableDeclaration", + "scope": 9968, + "src": "41789:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9950, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41789:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9953, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41803:2:4", + "nodeType": "VariableDeclaration", + "scope": 9968, + "src": "41798:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9952, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41798:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "41758:48:4" + }, + "returnParameters": { + "id": 9955, + "nodeType": "ParameterList", + "parameters": [], + "src": "41821:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 9991, + "nodeType": "FunctionDefinition", + "src": "41933:187:4", + "body": { + "id": 9990, + "nodeType": "Block", + "src": "42011:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c6164647265737329", + "id": 9982, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42061:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + "value": "log(string,address,bool,address)" + }, + { + "id": 9983, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9970, + "src": "42097:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 9984, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9972, + "src": "42101:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 9985, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9974, + "src": "42105:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 9986, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9976, + "src": "42109:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 9980, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42037:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 9981, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42037:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 9987, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42037:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 9979, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42021:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 9988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42021:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 9989, + "nodeType": "ExpressionStatement", + "src": "42021:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41942:3:4", + "parameters": { + "id": 9977, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9970, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41960:2:4", + "nodeType": "VariableDeclaration", + "scope": 9991, + "src": "41946:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9969, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41946:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9972, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41972:2:4", + "nodeType": "VariableDeclaration", + "scope": 9991, + "src": "41964:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41964:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9974, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41981:2:4", + "nodeType": "VariableDeclaration", + "scope": 9991, + "src": "41976:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 9973, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41976:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9976, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41993:2:4", + "nodeType": "VariableDeclaration", + "scope": 9991, + "src": "41985:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9975, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41985:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "41945:51:4" + }, + "returnParameters": { + "id": 9978, + "nodeType": "ParameterList", + "parameters": [], + "src": "42011:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10014, + "nodeType": "FunctionDefinition", + "src": "42126:187:4", + "body": { + "id": 10013, + "nodeType": "Block", + "src": "42204:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c75696e7429", + "id": 10005, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42254:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6eb7943d4272e495e7f5cdeb25ef89b9c3c1042d5c1e0e6e11a8fdc842ff5e02", + "typeString": "literal_string \"log(string,address,address,uint)\"" + }, + "value": "log(string,address,address,uint)" + }, + { + "id": 10006, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9993, + "src": "42290:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10007, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9995, + "src": "42294:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10008, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9997, + "src": "42298:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10009, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 9999, + "src": "42302:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6eb7943d4272e495e7f5cdeb25ef89b9c3c1042d5c1e0e6e11a8fdc842ff5e02", + "typeString": "literal_string \"log(string,address,address,uint)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10003, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42230:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42230:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42230:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10002, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42214:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42214:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10012, + "nodeType": "ExpressionStatement", + "src": "42214:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42135:3:4", + "parameters": { + "id": 10000, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 9993, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42153:2:4", + "nodeType": "VariableDeclaration", + "scope": 10014, + "src": "42139:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 9992, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42139:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9995, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42165:2:4", + "nodeType": "VariableDeclaration", + "scope": 10014, + "src": "42157:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9994, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42157:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9997, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42177:2:4", + "nodeType": "VariableDeclaration", + "scope": 10014, + "src": "42169:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 9996, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42169:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9999, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42186:2:4", + "nodeType": "VariableDeclaration", + "scope": 10014, + "src": "42181:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 9998, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "42181:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "42138:51:4" + }, + "returnParameters": { + "id": 10001, + "nodeType": "ParameterList", + "parameters": [], + "src": "42204:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10037, + "nodeType": "FunctionDefinition", + "src": "42319:198:4", + "body": { + "id": 10036, + "nodeType": "Block", + "src": "42406:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c737472696e6729", + "id": 10028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42456:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + "value": "log(string,address,address,string)" + }, + { + "id": 10029, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10016, + "src": "42494:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10030, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10018, + "src": "42498:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10031, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10020, + "src": "42502:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10032, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10022, + "src": "42506:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10026, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42432:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10027, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42432:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42432:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10025, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42416:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10034, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42416:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10035, + "nodeType": "ExpressionStatement", + "src": "42416:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42328:3:4", + "parameters": { + "id": 10023, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10016, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42346:2:4", + "nodeType": "VariableDeclaration", + "scope": 10037, + "src": "42332:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10015, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42332:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10018, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42358:2:4", + "nodeType": "VariableDeclaration", + "scope": 10037, + "src": "42350:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10017, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42350:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10020, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42370:2:4", + "nodeType": "VariableDeclaration", + "scope": 10037, + "src": "42362:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10019, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42362:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10022, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42388:2:4", + "nodeType": "VariableDeclaration", + "scope": 10037, + "src": "42374:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10021, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42374:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "42331:60:4" + }, + "returnParameters": { + "id": 10024, + "nodeType": "ParameterList", + "parameters": [], + "src": "42406:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10060, + "nodeType": "FunctionDefinition", + "src": "42523:187:4", + "body": { + "id": 10059, + "nodeType": "Block", + "src": "42601:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c626f6f6c29", + "id": 10051, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42651:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + "value": "log(string,address,address,bool)" + }, + { + "id": 10052, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10039, + "src": "42687:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10053, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10041, + "src": "42691:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10054, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10043, + "src": "42695:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10055, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10045, + "src": "42699:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10049, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42627:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42627:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42627:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10048, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42611:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42611:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10058, + "nodeType": "ExpressionStatement", + "src": "42611:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42532:3:4", + "parameters": { + "id": 10046, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10039, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42550:2:4", + "nodeType": "VariableDeclaration", + "scope": 10060, + "src": "42536:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10038, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42536:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10041, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42562:2:4", + "nodeType": "VariableDeclaration", + "scope": 10060, + "src": "42554:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10040, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42554:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10043, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42574:2:4", + "nodeType": "VariableDeclaration", + "scope": 10060, + "src": "42566:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10042, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42566:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10045, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42583:2:4", + "nodeType": "VariableDeclaration", + "scope": 10060, + "src": "42578:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10044, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "42578:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "42535:51:4" + }, + "returnParameters": { + "id": 10047, + "nodeType": "ParameterList", + "parameters": [], + "src": "42601:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10083, + "nodeType": "FunctionDefinition", + "src": "42716:193:4", + "body": { + "id": 10082, + "nodeType": "Block", + "src": "42797:112:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c6164647265737329", + "id": 10074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42847:37:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + "value": "log(string,address,address,address)" + }, + { + "id": 10075, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10062, + "src": "42886:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10076, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10064, + "src": "42890:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10077, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10066, + "src": "42894:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10078, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10068, + "src": "42898:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10072, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42823:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10073, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42823:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42823:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10071, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42807:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42807:95:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10081, + "nodeType": "ExpressionStatement", + "src": "42807:95:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42725:3:4", + "parameters": { + "id": 10069, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10062, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42743:2:4", + "nodeType": "VariableDeclaration", + "scope": 10083, + "src": "42729:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10061, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42729:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10064, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42755:2:4", + "nodeType": "VariableDeclaration", + "scope": 10083, + "src": "42747:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42747:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10066, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42767:2:4", + "nodeType": "VariableDeclaration", + "scope": 10083, + "src": "42759:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10065, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42759:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10068, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42779:2:4", + "nodeType": "VariableDeclaration", + "scope": 10083, + "src": "42771:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10067, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42771:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "42728:54:4" + }, + "returnParameters": { + "id": 10070, + "nodeType": "ParameterList", + "parameters": [], + "src": "42797:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10106, + "nodeType": "FunctionDefinition", + "src": "42915:164:4", + "body": { + "id": 10105, + "nodeType": "Block", + "src": "42978:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c75696e742c75696e7429", + "id": 10097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43028:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32dfa524f720faf836764864b46011dc5eb74e494d57e12b294a68048585d558", + "typeString": "literal_string \"log(bool,uint,uint,uint)\"" + }, + "value": "log(bool,uint,uint,uint)" + }, + { + "id": 10098, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10085, + "src": "43056:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10099, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10087, + "src": "43060:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10100, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10089, + "src": "43064:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10101, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10091, + "src": "43068:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32dfa524f720faf836764864b46011dc5eb74e494d57e12b294a68048585d558", + "typeString": "literal_string \"log(bool,uint,uint,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10095, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43004:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10096, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43004:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43004:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10094, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "42988:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42988:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10104, + "nodeType": "ExpressionStatement", + "src": "42988:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42924:3:4", + "parameters": { + "id": 10092, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10085, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42933:2:4", + "nodeType": "VariableDeclaration", + "scope": 10106, + "src": "42928:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10084, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "42928:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10087, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42942:2:4", + "nodeType": "VariableDeclaration", + "scope": 10106, + "src": "42937:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10086, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "42937:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10089, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42951:2:4", + "nodeType": "VariableDeclaration", + "scope": 10106, + "src": "42946:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10088, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "42946:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10091, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42960:2:4", + "nodeType": "VariableDeclaration", + "scope": 10106, + "src": "42955:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10090, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "42955:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "42927:36:4" + }, + "returnParameters": { + "id": 10093, + "nodeType": "ParameterList", + "parameters": [], + "src": "42978:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10129, + "nodeType": "FunctionDefinition", + "src": "43085:175:4", + "body": { + "id": 10128, + "nodeType": "Block", + "src": "43157:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c75696e742c737472696e6729", + "id": 10120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43207:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_da0666c89b01999f5c8980ce90fe9d0a367a350fd8d2ec7d1f94587b6281ebd3", + "typeString": "literal_string \"log(bool,uint,uint,string)\"" + }, + "value": "log(bool,uint,uint,string)" + }, + { + "id": 10121, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10108, + "src": "43237:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10122, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10110, + "src": "43241:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10123, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10112, + "src": "43245:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10124, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10114, + "src": "43249:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_da0666c89b01999f5c8980ce90fe9d0a367a350fd8d2ec7d1f94587b6281ebd3", + "typeString": "literal_string \"log(bool,uint,uint,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10118, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43183:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43183:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43183:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10117, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "43167:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43167:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10127, + "nodeType": "ExpressionStatement", + "src": "43167:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43094:3:4", + "parameters": { + "id": 10115, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10108, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43103:2:4", + "nodeType": "VariableDeclaration", + "scope": 10129, + "src": "43098:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10107, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43098:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10110, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43112:2:4", + "nodeType": "VariableDeclaration", + "scope": 10129, + "src": "43107:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10109, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43107:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10112, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43121:2:4", + "nodeType": "VariableDeclaration", + "scope": 10129, + "src": "43116:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10111, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43116:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10114, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43139:2:4", + "nodeType": "VariableDeclaration", + "scope": 10129, + "src": "43125:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10113, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43125:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "43097:45:4" + }, + "returnParameters": { + "id": 10116, + "nodeType": "ParameterList", + "parameters": [], + "src": "43157:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10152, + "nodeType": "FunctionDefinition", + "src": "43266:164:4", + "body": { + "id": 10151, + "nodeType": "Block", + "src": "43329:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c75696e742c626f6f6c29", + "id": 10143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43379:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a41d81dec511172fa866e067fea22fe074eb6260a116ec078e2e0e79a7fd8ef2", + "typeString": "literal_string \"log(bool,uint,uint,bool)\"" + }, + "value": "log(bool,uint,uint,bool)" + }, + { + "id": 10144, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10131, + "src": "43407:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10145, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10133, + "src": "43411:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10146, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10135, + "src": "43415:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10147, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10137, + "src": "43419:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a41d81dec511172fa866e067fea22fe074eb6260a116ec078e2e0e79a7fd8ef2", + "typeString": "literal_string \"log(bool,uint,uint,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10141, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43355:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43355:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43355:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10140, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "43339:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43339:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10150, + "nodeType": "ExpressionStatement", + "src": "43339:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43275:3:4", + "parameters": { + "id": 10138, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10131, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43284:2:4", + "nodeType": "VariableDeclaration", + "scope": 10152, + "src": "43279:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10130, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43279:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10133, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43293:2:4", + "nodeType": "VariableDeclaration", + "scope": 10152, + "src": "43288:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10132, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43288:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10135, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43302:2:4", + "nodeType": "VariableDeclaration", + "scope": 10152, + "src": "43297:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10134, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43297:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10137, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43311:2:4", + "nodeType": "VariableDeclaration", + "scope": 10152, + "src": "43306:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10136, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43306:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "43278:36:4" + }, + "returnParameters": { + "id": 10139, + "nodeType": "ParameterList", + "parameters": [], + "src": "43329:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10175, + "nodeType": "FunctionDefinition", + "src": "43436:170:4", + "body": { + "id": 10174, + "nodeType": "Block", + "src": "43502:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c75696e742c6164647265737329", + "id": 10166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43552:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f161b2216765f7746c6d62a843721a4e56fa83880464de0ff958770fd9704e33", + "typeString": "literal_string \"log(bool,uint,uint,address)\"" + }, + "value": "log(bool,uint,uint,address)" + }, + { + "id": 10167, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10154, + "src": "43583:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10168, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10156, + "src": "43587:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10169, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10158, + "src": "43591:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10170, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10160, + "src": "43595:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f161b2216765f7746c6d62a843721a4e56fa83880464de0ff958770fd9704e33", + "typeString": "literal_string \"log(bool,uint,uint,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10164, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43528:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10165, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43528:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43528:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10163, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "43512:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43512:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10173, + "nodeType": "ExpressionStatement", + "src": "43512:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43445:3:4", + "parameters": { + "id": 10161, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10154, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43454:2:4", + "nodeType": "VariableDeclaration", + "scope": 10175, + "src": "43449:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10153, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43449:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10156, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43463:2:4", + "nodeType": "VariableDeclaration", + "scope": 10175, + "src": "43458:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10155, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43458:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10158, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43472:2:4", + "nodeType": "VariableDeclaration", + "scope": 10175, + "src": "43467:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10157, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43467:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10160, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43484:2:4", + "nodeType": "VariableDeclaration", + "scope": 10175, + "src": "43476:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10159, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43476:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "43448:39:4" + }, + "returnParameters": { + "id": 10162, + "nodeType": "ParameterList", + "parameters": [], + "src": "43502:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10198, + "nodeType": "FunctionDefinition", + "src": "43612:175:4", + "body": { + "id": 10197, + "nodeType": "Block", + "src": "43684:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c737472696e672c75696e7429", + "id": 10189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43734:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4180011b79de474cdb825b6c4cfbc6d05927b06d92ab7c90ba7ff48d251e1813", + "typeString": "literal_string \"log(bool,uint,string,uint)\"" + }, + "value": "log(bool,uint,string,uint)" + }, + { + "id": 10190, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10177, + "src": "43764:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10191, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10179, + "src": "43768:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10192, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10181, + "src": "43772:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10193, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10183, + "src": "43776:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4180011b79de474cdb825b6c4cfbc6d05927b06d92ab7c90ba7ff48d251e1813", + "typeString": "literal_string \"log(bool,uint,string,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10187, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43710:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43710:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43710:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10186, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "43694:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43694:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10196, + "nodeType": "ExpressionStatement", + "src": "43694:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43621:3:4", + "parameters": { + "id": 10184, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10177, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43630:2:4", + "nodeType": "VariableDeclaration", + "scope": 10198, + "src": "43625:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10176, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43625:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10179, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43639:2:4", + "nodeType": "VariableDeclaration", + "scope": 10198, + "src": "43634:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10178, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43634:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10181, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43657:2:4", + "nodeType": "VariableDeclaration", + "scope": 10198, + "src": "43643:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10180, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43643:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10183, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43666:2:4", + "nodeType": "VariableDeclaration", + "scope": 10198, + "src": "43661:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10182, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43661:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "43624:45:4" + }, + "returnParameters": { + "id": 10185, + "nodeType": "ParameterList", + "parameters": [], + "src": "43684:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10221, + "nodeType": "FunctionDefinition", + "src": "43793:186:4", + "body": { + "id": 10220, + "nodeType": "Block", + "src": "43874:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c737472696e672c737472696e6729", + "id": 10212, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43924:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d32a654812cf9bc5514c83d6adb00987a26a725c531c254b4dfe4eef4cdfc8ee", + "typeString": "literal_string \"log(bool,uint,string,string)\"" + }, + "value": "log(bool,uint,string,string)" + }, + { + "id": 10213, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10200, + "src": "43956:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10214, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10202, + "src": "43960:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10215, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10204, + "src": "43964:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10216, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10206, + "src": "43968:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d32a654812cf9bc5514c83d6adb00987a26a725c531c254b4dfe4eef4cdfc8ee", + "typeString": "literal_string \"log(bool,uint,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10210, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43900:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43900:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43900:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10209, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "43884:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43884:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10219, + "nodeType": "ExpressionStatement", + "src": "43884:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43802:3:4", + "parameters": { + "id": 10207, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10200, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43811:2:4", + "nodeType": "VariableDeclaration", + "scope": 10221, + "src": "43806:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10199, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43806:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10202, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43820:2:4", + "nodeType": "VariableDeclaration", + "scope": 10221, + "src": "43815:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10201, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "43815:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10204, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43838:2:4", + "nodeType": "VariableDeclaration", + "scope": 10221, + "src": "43824:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10203, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43824:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10206, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43856:2:4", + "nodeType": "VariableDeclaration", + "scope": 10221, + "src": "43842:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10205, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43842:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "43805:54:4" + }, + "returnParameters": { + "id": 10208, + "nodeType": "ParameterList", + "parameters": [], + "src": "43874:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10244, + "nodeType": "FunctionDefinition", + "src": "43985:175:4", + "body": { + "id": 10243, + "nodeType": "Block", + "src": "44057:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c737472696e672c626f6f6c29", + "id": 10235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44107:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91d2f813beb255a90e7ea595fb27355b60d93c3f818aac6b4c27388d34e0ea16", + "typeString": "literal_string \"log(bool,uint,string,bool)\"" + }, + "value": "log(bool,uint,string,bool)" + }, + { + "id": 10236, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10223, + "src": "44137:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10237, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10225, + "src": "44141:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10238, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10227, + "src": "44145:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10239, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10229, + "src": "44149:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91d2f813beb255a90e7ea595fb27355b60d93c3f818aac6b4c27388d34e0ea16", + "typeString": "literal_string \"log(bool,uint,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10233, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44083:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44083:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10240, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44083:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10232, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44067:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44067:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10242, + "nodeType": "ExpressionStatement", + "src": "44067:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43994:3:4", + "parameters": { + "id": 10230, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10223, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44003:2:4", + "nodeType": "VariableDeclaration", + "scope": 10244, + "src": "43998:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10222, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43998:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10225, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44012:2:4", + "nodeType": "VariableDeclaration", + "scope": 10244, + "src": "44007:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10224, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44007:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10227, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44030:2:4", + "nodeType": "VariableDeclaration", + "scope": 10244, + "src": "44016:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10226, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44016:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10229, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44039:2:4", + "nodeType": "VariableDeclaration", + "scope": 10244, + "src": "44034:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10228, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44034:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "43997:45:4" + }, + "returnParameters": { + "id": 10231, + "nodeType": "ParameterList", + "parameters": [], + "src": "44057:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10267, + "nodeType": "FunctionDefinition", + "src": "44166:181:4", + "body": { + "id": 10266, + "nodeType": "Block", + "src": "44241:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c737472696e672c6164647265737329", + "id": 10258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44291:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5c70d29969a9ad21bdf8986348e5dc44eea151f64e0f90231a45219c4d0e3d5", + "typeString": "literal_string \"log(bool,uint,string,address)\"" + }, + "value": "log(bool,uint,string,address)" + }, + { + "id": 10259, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10246, + "src": "44324:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10260, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10248, + "src": "44328:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10261, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10250, + "src": "44332:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10262, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10252, + "src": "44336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5c70d29969a9ad21bdf8986348e5dc44eea151f64e0f90231a45219c4d0e3d5", + "typeString": "literal_string \"log(bool,uint,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10256, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44267:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44267:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10263, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44267:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10255, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44251:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44251:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10265, + "nodeType": "ExpressionStatement", + "src": "44251:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44175:3:4", + "parameters": { + "id": 10253, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10246, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44184:2:4", + "nodeType": "VariableDeclaration", + "scope": 10267, + "src": "44179:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10245, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44179:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10248, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44193:2:4", + "nodeType": "VariableDeclaration", + "scope": 10267, + "src": "44188:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10247, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44188:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10250, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44211:2:4", + "nodeType": "VariableDeclaration", + "scope": 10267, + "src": "44197:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10249, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44197:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10252, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44223:2:4", + "nodeType": "VariableDeclaration", + "scope": 10267, + "src": "44215:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10251, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44215:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "44178:48:4" + }, + "returnParameters": { + "id": 10254, + "nodeType": "ParameterList", + "parameters": [], + "src": "44241:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10290, + "nodeType": "FunctionDefinition", + "src": "44353:164:4", + "body": { + "id": 10289, + "nodeType": "Block", + "src": "44416:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c626f6f6c2c75696e7429", + "id": 10281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44466:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d3de5593988099d08808f80d2a972ea3da18ecd746f0a3e437c530efaad65aa0", + "typeString": "literal_string \"log(bool,uint,bool,uint)\"" + }, + "value": "log(bool,uint,bool,uint)" + }, + { + "id": 10282, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10269, + "src": "44494:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10283, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10271, + "src": "44498:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10284, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10273, + "src": "44502:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10285, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10275, + "src": "44506:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d3de5593988099d08808f80d2a972ea3da18ecd746f0a3e437c530efaad65aa0", + "typeString": "literal_string \"log(bool,uint,bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10279, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44442:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44442:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44442:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10278, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44426:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44426:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10288, + "nodeType": "ExpressionStatement", + "src": "44426:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44362:3:4", + "parameters": { + "id": 10276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10269, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44371:2:4", + "nodeType": "VariableDeclaration", + "scope": 10290, + "src": "44366:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10268, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44366:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10271, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44380:2:4", + "nodeType": "VariableDeclaration", + "scope": 10290, + "src": "44375:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10270, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44375:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10273, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44389:2:4", + "nodeType": "VariableDeclaration", + "scope": 10290, + "src": "44384:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10272, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44384:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10275, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44398:2:4", + "nodeType": "VariableDeclaration", + "scope": 10290, + "src": "44393:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10274, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44393:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "44365:36:4" + }, + "returnParameters": { + "id": 10277, + "nodeType": "ParameterList", + "parameters": [], + "src": "44416:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10313, + "nodeType": "FunctionDefinition", + "src": "44523:175:4", + "body": { + "id": 10312, + "nodeType": "Block", + "src": "44595:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c626f6f6c2c737472696e6729", + "id": 10304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44645:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b6d569d433e69694879a799e3777d59bc29ee89dcbaf739de9b283882fd259ad", + "typeString": "literal_string \"log(bool,uint,bool,string)\"" + }, + "value": "log(bool,uint,bool,string)" + }, + { + "id": 10305, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10292, + "src": "44675:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10306, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10294, + "src": "44679:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10307, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10296, + "src": "44683:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10308, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10298, + "src": "44687:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b6d569d433e69694879a799e3777d59bc29ee89dcbaf739de9b283882fd259ad", + "typeString": "literal_string \"log(bool,uint,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10302, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44621:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10303, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44621:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10309, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44621:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10301, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44605:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44605:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10311, + "nodeType": "ExpressionStatement", + "src": "44605:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44532:3:4", + "parameters": { + "id": 10299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10292, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44541:2:4", + "nodeType": "VariableDeclaration", + "scope": 10313, + "src": "44536:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10291, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44536:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10294, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44550:2:4", + "nodeType": "VariableDeclaration", + "scope": 10313, + "src": "44545:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10293, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44545:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10296, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44559:2:4", + "nodeType": "VariableDeclaration", + "scope": 10313, + "src": "44554:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10295, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44554:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10298, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44577:2:4", + "nodeType": "VariableDeclaration", + "scope": 10313, + "src": "44563:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10297, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44563:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "44535:45:4" + }, + "returnParameters": { + "id": 10300, + "nodeType": "ParameterList", + "parameters": [], + "src": "44595:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10336, + "nodeType": "FunctionDefinition", + "src": "44704:164:4", + "body": { + "id": 10335, + "nodeType": "Block", + "src": "44767:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c626f6f6c2c626f6f6c29", + "id": 10327, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44817:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e01f7417c5ff66a2399364b03788fbf8437045d38acf377fab727a3440df7be", + "typeString": "literal_string \"log(bool,uint,bool,bool)\"" + }, + "value": "log(bool,uint,bool,bool)" + }, + { + "id": 10328, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10315, + "src": "44845:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10329, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10317, + "src": "44849:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10330, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10319, + "src": "44853:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10331, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10321, + "src": "44857:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9e01f7417c5ff66a2399364b03788fbf8437045d38acf377fab727a3440df7be", + "typeString": "literal_string \"log(bool,uint,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10325, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44793:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44793:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44793:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10324, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44777:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44777:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10334, + "nodeType": "ExpressionStatement", + "src": "44777:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44713:3:4", + "parameters": { + "id": 10322, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10315, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44722:2:4", + "nodeType": "VariableDeclaration", + "scope": 10336, + "src": "44717:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10314, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44717:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10317, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44731:2:4", + "nodeType": "VariableDeclaration", + "scope": 10336, + "src": "44726:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10316, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44726:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10319, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44740:2:4", + "nodeType": "VariableDeclaration", + "scope": 10336, + "src": "44735:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10318, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44735:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10321, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44749:2:4", + "nodeType": "VariableDeclaration", + "scope": 10336, + "src": "44744:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10320, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44744:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "44716:36:4" + }, + "returnParameters": { + "id": 10323, + "nodeType": "ParameterList", + "parameters": [], + "src": "44767:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10359, + "nodeType": "FunctionDefinition", + "src": "44874:170:4", + "body": { + "id": 10358, + "nodeType": "Block", + "src": "44940:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c626f6f6c2c6164647265737329", + "id": 10350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44990:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4267c7f8f9987b1bc934e31e016f4d182f67ab95e55c5567fbc71b4f01a83f4b", + "typeString": "literal_string \"log(bool,uint,bool,address)\"" + }, + "value": "log(bool,uint,bool,address)" + }, + { + "id": 10351, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10338, + "src": "45021:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10352, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10340, + "src": "45025:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10353, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10342, + "src": "45029:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10354, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10344, + "src": "45033:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4267c7f8f9987b1bc934e31e016f4d182f67ab95e55c5567fbc71b4f01a83f4b", + "typeString": "literal_string \"log(bool,uint,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10348, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44966:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10349, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44966:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44966:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10347, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "44950:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44950:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10357, + "nodeType": "ExpressionStatement", + "src": "44950:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44883:3:4", + "parameters": { + "id": 10345, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10338, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44892:2:4", + "nodeType": "VariableDeclaration", + "scope": 10359, + "src": "44887:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10337, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44887:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10340, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44901:2:4", + "nodeType": "VariableDeclaration", + "scope": 10359, + "src": "44896:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10339, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "44896:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10342, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44910:2:4", + "nodeType": "VariableDeclaration", + "scope": 10359, + "src": "44905:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10341, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44905:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10344, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44922:2:4", + "nodeType": "VariableDeclaration", + "scope": 10359, + "src": "44914:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10343, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44914:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "44886:39:4" + }, + "returnParameters": { + "id": 10346, + "nodeType": "ParameterList", + "parameters": [], + "src": "44940:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10382, + "nodeType": "FunctionDefinition", + "src": "45050:170:4", + "body": { + "id": 10381, + "nodeType": "Block", + "src": "45116:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c616464726573732c75696e7429", + "id": 10373, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45166:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_caa5236acb25f4f5a01ec5f570d99d895d397c7e9fd20ed31c9c33fa8a17f26d", + "typeString": "literal_string \"log(bool,uint,address,uint)\"" + }, + "value": "log(bool,uint,address,uint)" + }, + { + "id": 10374, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10361, + "src": "45197:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10375, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10363, + "src": "45201:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10376, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10365, + "src": "45205:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10377, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10367, + "src": "45209:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_caa5236acb25f4f5a01ec5f570d99d895d397c7e9fd20ed31c9c33fa8a17f26d", + "typeString": "literal_string \"log(bool,uint,address,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10371, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45142:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10372, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45142:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45142:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10370, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "45126:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45126:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10380, + "nodeType": "ExpressionStatement", + "src": "45126:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45059:3:4", + "parameters": { + "id": 10368, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10361, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45068:2:4", + "nodeType": "VariableDeclaration", + "scope": 10382, + "src": "45063:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10360, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45063:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10363, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45077:2:4", + "nodeType": "VariableDeclaration", + "scope": 10382, + "src": "45072:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10362, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45072:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10365, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45089:2:4", + "nodeType": "VariableDeclaration", + "scope": 10382, + "src": "45081:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10364, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45081:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10367, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45098:2:4", + "nodeType": "VariableDeclaration", + "scope": 10382, + "src": "45093:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10366, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45093:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "45062:39:4" + }, + "returnParameters": { + "id": 10369, + "nodeType": "ParameterList", + "parameters": [], + "src": "45116:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10405, + "nodeType": "FunctionDefinition", + "src": "45226:181:4", + "body": { + "id": 10404, + "nodeType": "Block", + "src": "45301:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c616464726573732c737472696e6729", + "id": 10396, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45351:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_180913415ccbde45e0d2184e3dd2387bed86df0066bd73fcb896bc02a6226689", + "typeString": "literal_string \"log(bool,uint,address,string)\"" + }, + "value": "log(bool,uint,address,string)" + }, + { + "id": 10397, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10384, + "src": "45384:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10398, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10386, + "src": "45388:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10399, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10388, + "src": "45392:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10400, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10390, + "src": "45396:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_180913415ccbde45e0d2184e3dd2387bed86df0066bd73fcb896bc02a6226689", + "typeString": "literal_string \"log(bool,uint,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10394, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45327:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45327:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45327:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10393, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "45311:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45311:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10403, + "nodeType": "ExpressionStatement", + "src": "45311:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45235:3:4", + "parameters": { + "id": 10391, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10384, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45244:2:4", + "nodeType": "VariableDeclaration", + "scope": 10405, + "src": "45239:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10383, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45239:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10386, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45253:2:4", + "nodeType": "VariableDeclaration", + "scope": 10405, + "src": "45248:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10385, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45248:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10388, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45265:2:4", + "nodeType": "VariableDeclaration", + "scope": 10405, + "src": "45257:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10387, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45257:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10390, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45283:2:4", + "nodeType": "VariableDeclaration", + "scope": 10405, + "src": "45269:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10389, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45269:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "45238:48:4" + }, + "returnParameters": { + "id": 10392, + "nodeType": "ParameterList", + "parameters": [], + "src": "45301:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10428, + "nodeType": "FunctionDefinition", + "src": "45413:170:4", + "body": { + "id": 10427, + "nodeType": "Block", + "src": "45479:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c616464726573732c626f6f6c29", + "id": 10419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45529:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_65adf4082cd731bd1252f957eddeecdbdcf11e48975b5ac20d902fcb218153fa", + "typeString": "literal_string \"log(bool,uint,address,bool)\"" + }, + "value": "log(bool,uint,address,bool)" + }, + { + "id": 10420, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10407, + "src": "45560:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10421, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10409, + "src": "45564:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10422, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10411, + "src": "45568:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10423, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10413, + "src": "45572:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_65adf4082cd731bd1252f957eddeecdbdcf11e48975b5ac20d902fcb218153fa", + "typeString": "literal_string \"log(bool,uint,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10417, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45505:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10418, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45505:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45505:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10416, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "45489:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45489:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10426, + "nodeType": "ExpressionStatement", + "src": "45489:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45422:3:4", + "parameters": { + "id": 10414, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10407, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45431:2:4", + "nodeType": "VariableDeclaration", + "scope": 10428, + "src": "45426:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10406, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45426:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10409, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45440:2:4", + "nodeType": "VariableDeclaration", + "scope": 10428, + "src": "45435:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10408, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45435:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10411, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45452:2:4", + "nodeType": "VariableDeclaration", + "scope": 10428, + "src": "45444:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10410, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45444:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10413, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45461:2:4", + "nodeType": "VariableDeclaration", + "scope": 10428, + "src": "45456:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10412, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45456:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "45425:39:4" + }, + "returnParameters": { + "id": 10415, + "nodeType": "ParameterList", + "parameters": [], + "src": "45479:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10451, + "nodeType": "FunctionDefinition", + "src": "45589:176:4", + "body": { + "id": 10450, + "nodeType": "Block", + "src": "45658:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e742c616464726573732c6164647265737329", + "id": 10442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45708:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8a2f90aa07fc9781ea213028ce9aef0a44d6a31a77e2f4d54d97a0d808348d5d", + "typeString": "literal_string \"log(bool,uint,address,address)\"" + }, + "value": "log(bool,uint,address,address)" + }, + { + "id": 10443, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10430, + "src": "45742:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10444, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10432, + "src": "45746:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10445, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10434, + "src": "45750:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10446, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10436, + "src": "45754:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8a2f90aa07fc9781ea213028ce9aef0a44d6a31a77e2f4d54d97a0d808348d5d", + "typeString": "literal_string \"log(bool,uint,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10440, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45684:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10441, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45684:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10447, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45684:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10439, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "45668:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45668:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10449, + "nodeType": "ExpressionStatement", + "src": "45668:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45598:3:4", + "parameters": { + "id": 10437, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10430, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45607:2:4", + "nodeType": "VariableDeclaration", + "scope": 10451, + "src": "45602:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10429, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45602:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10432, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45616:2:4", + "nodeType": "VariableDeclaration", + "scope": 10451, + "src": "45611:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10431, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45611:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10434, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45628:2:4", + "nodeType": "VariableDeclaration", + "scope": 10451, + "src": "45620:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10433, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45620:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10436, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45640:2:4", + "nodeType": "VariableDeclaration", + "scope": 10451, + "src": "45632:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10435, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45632:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "45601:42:4" + }, + "returnParameters": { + "id": 10438, + "nodeType": "ParameterList", + "parameters": [], + "src": "45658:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10474, + "nodeType": "FunctionDefinition", + "src": "45771:175:4", + "body": { + "id": 10473, + "nodeType": "Block", + "src": "45843:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e742c75696e7429", + "id": 10465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45893:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e4ae86e71c7c77322d634e39fba7bc2a7e4fbe918bce10fe47326050a13b7c9", + "typeString": "literal_string \"log(bool,string,uint,uint)\"" + }, + "value": "log(bool,string,uint,uint)" + }, + { + "id": 10466, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10453, + "src": "45923:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10467, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10455, + "src": "45927:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10468, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10457, + "src": "45931:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10469, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10459, + "src": "45935:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e4ae86e71c7c77322d634e39fba7bc2a7e4fbe918bce10fe47326050a13b7c9", + "typeString": "literal_string \"log(bool,string,uint,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10463, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45869:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10464, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45869:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45869:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10462, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "45853:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45853:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10472, + "nodeType": "ExpressionStatement", + "src": "45853:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45780:3:4", + "parameters": { + "id": 10460, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10453, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45789:2:4", + "nodeType": "VariableDeclaration", + "scope": 10474, + "src": "45784:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10452, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45784:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10455, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45807:2:4", + "nodeType": "VariableDeclaration", + "scope": 10474, + "src": "45793:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10454, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45793:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10457, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45816:2:4", + "nodeType": "VariableDeclaration", + "scope": 10474, + "src": "45811:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10456, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45811:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10459, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45825:2:4", + "nodeType": "VariableDeclaration", + "scope": 10474, + "src": "45820:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10458, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45820:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "45783:45:4" + }, + "returnParameters": { + "id": 10461, + "nodeType": "ParameterList", + "parameters": [], + "src": "45843:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10497, + "nodeType": "FunctionDefinition", + "src": "45952:186:4", + "body": { + "id": 10496, + "nodeType": "Block", + "src": "46033:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e742c737472696e6729", + "id": 10488, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46083:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_77a1abed9f9fbc44023408083dd5c1cf42b0b566799470c6ab535b12d0f8f649", + "typeString": "literal_string \"log(bool,string,uint,string)\"" + }, + "value": "log(bool,string,uint,string)" + }, + { + "id": 10489, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10476, + "src": "46115:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10490, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10478, + "src": "46119:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10491, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10480, + "src": "46123:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10492, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10482, + "src": "46127:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_77a1abed9f9fbc44023408083dd5c1cf42b0b566799470c6ab535b12d0f8f649", + "typeString": "literal_string \"log(bool,string,uint,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10486, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46059:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10487, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46059:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46059:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10485, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46043:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46043:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10495, + "nodeType": "ExpressionStatement", + "src": "46043:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45961:3:4", + "parameters": { + "id": 10483, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10476, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45970:2:4", + "nodeType": "VariableDeclaration", + "scope": 10497, + "src": "45965:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10475, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45965:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10478, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45988:2:4", + "nodeType": "VariableDeclaration", + "scope": 10497, + "src": "45974:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10477, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45974:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10480, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45997:2:4", + "nodeType": "VariableDeclaration", + "scope": 10497, + "src": "45992:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10479, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "45992:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10482, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46015:2:4", + "nodeType": "VariableDeclaration", + "scope": 10497, + "src": "46001:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10481, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46001:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "45964:54:4" + }, + "returnParameters": { + "id": 10484, + "nodeType": "ParameterList", + "parameters": [], + "src": "46033:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10520, + "nodeType": "FunctionDefinition", + "src": "46144:175:4", + "body": { + "id": 10519, + "nodeType": "Block", + "src": "46216:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e742c626f6f6c29", + "id": 10511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46266:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_20bbc9af7c6bae926ffd73678c9130310d497610a5c76e6e2ae48edff96f38a8", + "typeString": "literal_string \"log(bool,string,uint,bool)\"" + }, + "value": "log(bool,string,uint,bool)" + }, + { + "id": 10512, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10499, + "src": "46296:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10513, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10501, + "src": "46300:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10514, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10503, + "src": "46304:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10515, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10505, + "src": "46308:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_20bbc9af7c6bae926ffd73678c9130310d497610a5c76e6e2ae48edff96f38a8", + "typeString": "literal_string \"log(bool,string,uint,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10509, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46242:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10510, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46242:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46242:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10508, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46226:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46226:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10518, + "nodeType": "ExpressionStatement", + "src": "46226:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46153:3:4", + "parameters": { + "id": 10506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10499, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46162:2:4", + "nodeType": "VariableDeclaration", + "scope": 10520, + "src": "46157:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10498, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46157:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10501, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46180:2:4", + "nodeType": "VariableDeclaration", + "scope": 10520, + "src": "46166:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10500, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46166:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10503, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46189:2:4", + "nodeType": "VariableDeclaration", + "scope": 10520, + "src": "46184:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10502, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "46184:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10505, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46198:2:4", + "nodeType": "VariableDeclaration", + "scope": 10520, + "src": "46193:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10504, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46193:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "46156:45:4" + }, + "returnParameters": { + "id": 10507, + "nodeType": "ParameterList", + "parameters": [], + "src": "46216:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10543, + "nodeType": "FunctionDefinition", + "src": "46325:181:4", + "body": { + "id": 10542, + "nodeType": "Block", + "src": "46400:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e742c6164647265737329", + "id": 10534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46450:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5b22b938264abfc98de8ea025ac5bd87df03cbffd23b96cdfe194e0ef6fb136a", + "typeString": "literal_string \"log(bool,string,uint,address)\"" + }, + "value": "log(bool,string,uint,address)" + }, + { + "id": 10535, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10522, + "src": "46483:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10536, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10524, + "src": "46487:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10537, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10526, + "src": "46491:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10538, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10528, + "src": "46495:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5b22b938264abfc98de8ea025ac5bd87df03cbffd23b96cdfe194e0ef6fb136a", + "typeString": "literal_string \"log(bool,string,uint,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10532, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46426:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46426:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46426:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10531, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46410:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46410:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10541, + "nodeType": "ExpressionStatement", + "src": "46410:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46334:3:4", + "parameters": { + "id": 10529, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10522, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46343:2:4", + "nodeType": "VariableDeclaration", + "scope": 10543, + "src": "46338:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10521, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46338:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10524, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46361:2:4", + "nodeType": "VariableDeclaration", + "scope": 10543, + "src": "46347:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10523, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46347:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10526, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46370:2:4", + "nodeType": "VariableDeclaration", + "scope": 10543, + "src": "46365:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10525, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "46365:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10528, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46382:2:4", + "nodeType": "VariableDeclaration", + "scope": 10543, + "src": "46374:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10527, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46374:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "46337:48:4" + }, + "returnParameters": { + "id": 10530, + "nodeType": "ParameterList", + "parameters": [], + "src": "46400:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10566, + "nodeType": "FunctionDefinition", + "src": "46512:186:4", + "body": { + "id": 10565, + "nodeType": "Block", + "src": "46593:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c75696e7429", + "id": 10557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46643:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ddb259214a75c0fc75757e8e19b1cf1c4ec17a5eef635b4715f04b86884d5df", + "typeString": "literal_string \"log(bool,string,string,uint)\"" + }, + "value": "log(bool,string,string,uint)" + }, + { + "id": 10558, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10545, + "src": "46675:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10559, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10547, + "src": "46679:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10560, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10549, + "src": "46683:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10561, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10551, + "src": "46687:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ddb259214a75c0fc75757e8e19b1cf1c4ec17a5eef635b4715f04b86884d5df", + "typeString": "literal_string \"log(bool,string,string,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10555, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46619:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46619:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10562, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46619:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10554, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46603:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46603:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10564, + "nodeType": "ExpressionStatement", + "src": "46603:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46521:3:4", + "parameters": { + "id": 10552, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10545, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46530:2:4", + "nodeType": "VariableDeclaration", + "scope": 10566, + "src": "46525:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10544, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46525:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10547, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46548:2:4", + "nodeType": "VariableDeclaration", + "scope": 10566, + "src": "46534:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10546, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46534:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10549, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46566:2:4", + "nodeType": "VariableDeclaration", + "scope": 10566, + "src": "46552:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10548, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46552:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10551, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46575:2:4", + "nodeType": "VariableDeclaration", + "scope": 10566, + "src": "46570:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10550, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "46570:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "46524:54:4" + }, + "returnParameters": { + "id": 10553, + "nodeType": "ParameterList", + "parameters": [], + "src": "46593:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10589, + "nodeType": "FunctionDefinition", + "src": "46704:197:4", + "body": { + "id": 10588, + "nodeType": "Block", + "src": "46794:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c737472696e6729", + "id": 10580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46844:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + "value": "log(bool,string,string,string)" + }, + { + "id": 10581, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10568, + "src": "46878:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10582, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10570, + "src": "46882:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10583, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10572, + "src": "46886:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10584, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10574, + "src": "46890:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10578, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46820:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46820:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10585, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46820:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10577, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46804:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46804:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10587, + "nodeType": "ExpressionStatement", + "src": "46804:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46713:3:4", + "parameters": { + "id": 10575, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10568, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46722:2:4", + "nodeType": "VariableDeclaration", + "scope": 10589, + "src": "46717:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10567, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46717:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10570, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46740:2:4", + "nodeType": "VariableDeclaration", + "scope": 10589, + "src": "46726:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10569, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46726:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10572, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46758:2:4", + "nodeType": "VariableDeclaration", + "scope": 10589, + "src": "46744:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10571, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46744:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10574, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46776:2:4", + "nodeType": "VariableDeclaration", + "scope": 10589, + "src": "46762:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10573, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46762:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "46716:63:4" + }, + "returnParameters": { + "id": 10576, + "nodeType": "ParameterList", + "parameters": [], + "src": "46794:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10612, + "nodeType": "FunctionDefinition", + "src": "46907:186:4", + "body": { + "id": 10611, + "nodeType": "Block", + "src": "46988:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c626f6f6c29", + "id": 10603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47038:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + "value": "log(bool,string,string,bool)" + }, + { + "id": 10604, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10591, + "src": "47070:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10605, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10593, + "src": "47074:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10606, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10595, + "src": "47078:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10607, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10597, + "src": "47082:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10601, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47014:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47014:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10608, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47014:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10600, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "46998:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46998:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10610, + "nodeType": "ExpressionStatement", + "src": "46998:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46916:3:4", + "parameters": { + "id": 10598, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10591, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46925:2:4", + "nodeType": "VariableDeclaration", + "scope": 10612, + "src": "46920:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10590, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46920:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10593, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46943:2:4", + "nodeType": "VariableDeclaration", + "scope": 10612, + "src": "46929:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10592, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46929:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10595, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46961:2:4", + "nodeType": "VariableDeclaration", + "scope": 10612, + "src": "46947:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10594, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46947:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10597, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46970:2:4", + "nodeType": "VariableDeclaration", + "scope": 10612, + "src": "46965:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10596, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46965:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "46919:54:4" + }, + "returnParameters": { + "id": 10599, + "nodeType": "ParameterList", + "parameters": [], + "src": "46988:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10635, + "nodeType": "FunctionDefinition", + "src": "47099:192:4", + "body": { + "id": 10634, + "nodeType": "Block", + "src": "47183:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c6164647265737329", + "id": 10626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47233:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + "value": "log(bool,string,string,address)" + }, + { + "id": 10627, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10614, + "src": "47268:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10628, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10616, + "src": "47272:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10629, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10618, + "src": "47276:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10630, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10620, + "src": "47280:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10624, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47209:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10625, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47209:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47209:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10623, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "47193:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47193:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10633, + "nodeType": "ExpressionStatement", + "src": "47193:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47108:3:4", + "parameters": { + "id": 10621, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10614, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47117:2:4", + "nodeType": "VariableDeclaration", + "scope": 10635, + "src": "47112:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10613, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47112:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10616, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47135:2:4", + "nodeType": "VariableDeclaration", + "scope": 10635, + "src": "47121:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10615, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47121:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10618, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47153:2:4", + "nodeType": "VariableDeclaration", + "scope": 10635, + "src": "47139:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10617, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47139:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10620, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47165:2:4", + "nodeType": "VariableDeclaration", + "scope": 10635, + "src": "47157:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10619, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47157:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "47111:57:4" + }, + "returnParameters": { + "id": 10622, + "nodeType": "ParameterList", + "parameters": [], + "src": "47183:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10658, + "nodeType": "FunctionDefinition", + "src": "47297:175:4", + "body": { + "id": 10657, + "nodeType": "Block", + "src": "47369:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c75696e7429", + "id": 10649, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47419:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8d6f9ca539d16169f184b68d5f2cbc34ada538d6737083559aa5a96068582055", + "typeString": "literal_string \"log(bool,string,bool,uint)\"" + }, + "value": "log(bool,string,bool,uint)" + }, + { + "id": 10650, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10637, + "src": "47449:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10651, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10639, + "src": "47453:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10652, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10641, + "src": "47457:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10653, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10643, + "src": "47461:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8d6f9ca539d16169f184b68d5f2cbc34ada538d6737083559aa5a96068582055", + "typeString": "literal_string \"log(bool,string,bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10647, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47395:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10648, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47395:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10654, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47395:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10646, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "47379:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47379:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10656, + "nodeType": "ExpressionStatement", + "src": "47379:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47306:3:4", + "parameters": { + "id": 10644, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10637, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47315:2:4", + "nodeType": "VariableDeclaration", + "scope": 10658, + "src": "47310:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10636, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47310:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10639, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47333:2:4", + "nodeType": "VariableDeclaration", + "scope": 10658, + "src": "47319:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10638, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47319:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10641, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47342:2:4", + "nodeType": "VariableDeclaration", + "scope": 10658, + "src": "47337:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10640, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47337:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10643, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47351:2:4", + "nodeType": "VariableDeclaration", + "scope": 10658, + "src": "47346:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10642, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "47346:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "47309:45:4" + }, + "returnParameters": { + "id": 10645, + "nodeType": "ParameterList", + "parameters": [], + "src": "47369:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10681, + "nodeType": "FunctionDefinition", + "src": "47478:186:4", + "body": { + "id": 10680, + "nodeType": "Block", + "src": "47559:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c737472696e6729", + "id": 10672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47609:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + "value": "log(bool,string,bool,string)" + }, + { + "id": 10673, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10660, + "src": "47641:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10674, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10662, + "src": "47645:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10675, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10664, + "src": "47649:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10676, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10666, + "src": "47653:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10670, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47585:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10671, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47585:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10677, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47585:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10669, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "47569:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47569:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10679, + "nodeType": "ExpressionStatement", + "src": "47569:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47487:3:4", + "parameters": { + "id": 10667, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10660, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47496:2:4", + "nodeType": "VariableDeclaration", + "scope": 10681, + "src": "47491:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10659, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47491:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10662, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47514:2:4", + "nodeType": "VariableDeclaration", + "scope": 10681, + "src": "47500:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10661, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47500:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10664, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47523:2:4", + "nodeType": "VariableDeclaration", + "scope": 10681, + "src": "47518:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10663, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47518:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10666, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47541:2:4", + "nodeType": "VariableDeclaration", + "scope": 10681, + "src": "47527:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10665, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47527:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "47490:54:4" + }, + "returnParameters": { + "id": 10668, + "nodeType": "ParameterList", + "parameters": [], + "src": "47559:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10704, + "nodeType": "FunctionDefinition", + "src": "47670:175:4", + "body": { + "id": 10703, + "nodeType": "Block", + "src": "47742:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c626f6f6c29", + "id": 10695, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47792:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + "value": "log(bool,string,bool,bool)" + }, + { + "id": 10696, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10683, + "src": "47822:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10697, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10685, + "src": "47826:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10698, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10687, + "src": "47830:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10699, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10689, + "src": "47834:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10693, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47768:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47768:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47768:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10692, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "47752:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47752:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10702, + "nodeType": "ExpressionStatement", + "src": "47752:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47679:3:4", + "parameters": { + "id": 10690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10683, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47688:2:4", + "nodeType": "VariableDeclaration", + "scope": 10704, + "src": "47683:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10682, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47683:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10685, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47706:2:4", + "nodeType": "VariableDeclaration", + "scope": 10704, + "src": "47692:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10684, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47692:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10687, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47715:2:4", + "nodeType": "VariableDeclaration", + "scope": 10704, + "src": "47710:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10686, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47710:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10689, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47724:2:4", + "nodeType": "VariableDeclaration", + "scope": 10704, + "src": "47719:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10688, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47719:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "47682:45:4" + }, + "returnParameters": { + "id": 10691, + "nodeType": "ParameterList", + "parameters": [], + "src": "47742:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10727, + "nodeType": "FunctionDefinition", + "src": "47851:181:4", + "body": { + "id": 10726, + "nodeType": "Block", + "src": "47926:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c6164647265737329", + "id": 10718, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47976:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + "value": "log(bool,string,bool,address)" + }, + { + "id": 10719, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10706, + "src": "48009:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10720, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10708, + "src": "48013:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10721, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10710, + "src": "48017:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10722, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10712, + "src": "48021:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10716, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47952:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47952:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10723, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47952:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10715, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "47936:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47936:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10725, + "nodeType": "ExpressionStatement", + "src": "47936:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47860:3:4", + "parameters": { + "id": 10713, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10706, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47869:2:4", + "nodeType": "VariableDeclaration", + "scope": 10727, + "src": "47864:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10705, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47864:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10708, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47887:2:4", + "nodeType": "VariableDeclaration", + "scope": 10727, + "src": "47873:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10707, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47873:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10710, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47896:2:4", + "nodeType": "VariableDeclaration", + "scope": 10727, + "src": "47891:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10709, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47891:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10712, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47908:2:4", + "nodeType": "VariableDeclaration", + "scope": 10727, + "src": "47900:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10711, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47900:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "47863:48:4" + }, + "returnParameters": { + "id": 10714, + "nodeType": "ParameterList", + "parameters": [], + "src": "47926:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10750, + "nodeType": "FunctionDefinition", + "src": "48038:181:4", + "body": { + "id": 10749, + "nodeType": "Block", + "src": "48113:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c75696e7429", + "id": 10741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48163:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1b0b955b558cd224468bb20ba92b23519cb59fe363a105b00d7a815c1673c4ca", + "typeString": "literal_string \"log(bool,string,address,uint)\"" + }, + "value": "log(bool,string,address,uint)" + }, + { + "id": 10742, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10729, + "src": "48196:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10743, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10731, + "src": "48200:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10744, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10733, + "src": "48204:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10745, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10735, + "src": "48208:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1b0b955b558cd224468bb20ba92b23519cb59fe363a105b00d7a815c1673c4ca", + "typeString": "literal_string \"log(bool,string,address,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10739, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48139:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48139:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48139:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10738, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "48123:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48123:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10748, + "nodeType": "ExpressionStatement", + "src": "48123:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48047:3:4", + "parameters": { + "id": 10736, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10729, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48056:2:4", + "nodeType": "VariableDeclaration", + "scope": 10750, + "src": "48051:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10728, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48051:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10731, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48074:2:4", + "nodeType": "VariableDeclaration", + "scope": 10750, + "src": "48060:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10730, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48060:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10733, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48086:2:4", + "nodeType": "VariableDeclaration", + "scope": 10750, + "src": "48078:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10732, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48078:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10735, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48095:2:4", + "nodeType": "VariableDeclaration", + "scope": 10750, + "src": "48090:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10734, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "48090:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "48050:48:4" + }, + "returnParameters": { + "id": 10737, + "nodeType": "ParameterList", + "parameters": [], + "src": "48113:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10773, + "nodeType": "FunctionDefinition", + "src": "48225:192:4", + "body": { + "id": 10772, + "nodeType": "Block", + "src": "48309:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c737472696e6729", + "id": 10764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48359:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + "value": "log(bool,string,address,string)" + }, + { + "id": 10765, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10752, + "src": "48394:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10766, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10754, + "src": "48398:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10767, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10756, + "src": "48402:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10768, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10758, + "src": "48406:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10762, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48335:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48335:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48335:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10761, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "48319:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48319:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10771, + "nodeType": "ExpressionStatement", + "src": "48319:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48234:3:4", + "parameters": { + "id": 10759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10752, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48243:2:4", + "nodeType": "VariableDeclaration", + "scope": 10773, + "src": "48238:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10751, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48238:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10754, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48261:2:4", + "nodeType": "VariableDeclaration", + "scope": 10773, + "src": "48247:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10753, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48247:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10756, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48273:2:4", + "nodeType": "VariableDeclaration", + "scope": 10773, + "src": "48265:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10755, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48265:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10758, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48291:2:4", + "nodeType": "VariableDeclaration", + "scope": 10773, + "src": "48277:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10757, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48277:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "48237:57:4" + }, + "returnParameters": { + "id": 10760, + "nodeType": "ParameterList", + "parameters": [], + "src": "48309:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10796, + "nodeType": "FunctionDefinition", + "src": "48423:181:4", + "body": { + "id": 10795, + "nodeType": "Block", + "src": "48498:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c626f6f6c29", + "id": 10787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48548:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + "value": "log(bool,string,address,bool)" + }, + { + "id": 10788, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10775, + "src": "48581:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10789, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10777, + "src": "48585:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10790, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10779, + "src": "48589:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10791, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10781, + "src": "48593:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10785, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48524:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10786, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48524:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10792, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48524:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10784, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "48508:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48508:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10794, + "nodeType": "ExpressionStatement", + "src": "48508:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48432:3:4", + "parameters": { + "id": 10782, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10775, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48441:2:4", + "nodeType": "VariableDeclaration", + "scope": 10796, + "src": "48436:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10774, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48436:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10777, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48459:2:4", + "nodeType": "VariableDeclaration", + "scope": 10796, + "src": "48445:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10776, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48445:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10779, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48471:2:4", + "nodeType": "VariableDeclaration", + "scope": 10796, + "src": "48463:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10778, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48463:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10781, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48480:2:4", + "nodeType": "VariableDeclaration", + "scope": 10796, + "src": "48475:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10780, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48475:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "48435:48:4" + }, + "returnParameters": { + "id": 10783, + "nodeType": "ParameterList", + "parameters": [], + "src": "48498:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10819, + "nodeType": "FunctionDefinition", + "src": "48610:187:4", + "body": { + "id": 10818, + "nodeType": "Block", + "src": "48688:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c6164647265737329", + "id": 10810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48738:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + "value": "log(bool,string,address,address)" + }, + { + "id": 10811, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10798, + "src": "48774:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10812, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10800, + "src": "48778:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10813, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10802, + "src": "48782:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 10814, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10804, + "src": "48786:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10808, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48714:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48714:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10815, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48714:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10807, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "48698:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48698:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10817, + "nodeType": "ExpressionStatement", + "src": "48698:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48619:3:4", + "parameters": { + "id": 10805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10798, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48628:2:4", + "nodeType": "VariableDeclaration", + "scope": 10819, + "src": "48623:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10797, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48623:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10800, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48646:2:4", + "nodeType": "VariableDeclaration", + "scope": 10819, + "src": "48632:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10799, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48632:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10802, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48658:2:4", + "nodeType": "VariableDeclaration", + "scope": 10819, + "src": "48650:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10801, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48650:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10804, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48670:2:4", + "nodeType": "VariableDeclaration", + "scope": 10819, + "src": "48662:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48662:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "48622:51:4" + }, + "returnParameters": { + "id": 10806, + "nodeType": "ParameterList", + "parameters": [], + "src": "48688:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10842, + "nodeType": "FunctionDefinition", + "src": "48803:164:4", + "body": { + "id": 10841, + "nodeType": "Block", + "src": "48866:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e742c75696e7429", + "id": 10833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48916:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4667de8ece32e91ade336fb6d8a14a500512d40e1162a34636a5bca908b16e6a", + "typeString": "literal_string \"log(bool,bool,uint,uint)\"" + }, + "value": "log(bool,bool,uint,uint)" + }, + { + "id": 10834, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10821, + "src": "48944:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10835, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10823, + "src": "48948:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10836, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10825, + "src": "48952:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10837, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10827, + "src": "48956:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4667de8ece32e91ade336fb6d8a14a500512d40e1162a34636a5bca908b16e6a", + "typeString": "literal_string \"log(bool,bool,uint,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10831, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48892:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48892:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10838, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48892:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10830, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "48876:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48876:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10840, + "nodeType": "ExpressionStatement", + "src": "48876:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48812:3:4", + "parameters": { + "id": 10828, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10821, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48821:2:4", + "nodeType": "VariableDeclaration", + "scope": 10842, + "src": "48816:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10820, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48816:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10823, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48830:2:4", + "nodeType": "VariableDeclaration", + "scope": 10842, + "src": "48825:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10822, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48825:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10825, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48839:2:4", + "nodeType": "VariableDeclaration", + "scope": 10842, + "src": "48834:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10824, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "48834:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10827, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48848:2:4", + "nodeType": "VariableDeclaration", + "scope": 10842, + "src": "48843:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10826, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "48843:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "48815:36:4" + }, + "returnParameters": { + "id": 10829, + "nodeType": "ParameterList", + "parameters": [], + "src": "48866:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10865, + "nodeType": "FunctionDefinition", + "src": "48973:175:4", + "body": { + "id": 10864, + "nodeType": "Block", + "src": "49045:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e742c737472696e6729", + "id": 10856, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49095:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50618937639b3b1cb3bbe247efb1fae4eb9a85d1e66ac66dfc77c62561966adc", + "typeString": "literal_string \"log(bool,bool,uint,string)\"" + }, + "value": "log(bool,bool,uint,string)" + }, + { + "id": 10857, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10844, + "src": "49125:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10858, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10846, + "src": "49129:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10859, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10848, + "src": "49133:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10860, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10850, + "src": "49137:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50618937639b3b1cb3bbe247efb1fae4eb9a85d1e66ac66dfc77c62561966adc", + "typeString": "literal_string \"log(bool,bool,uint,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10854, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49071:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10855, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49071:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49071:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10853, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49055:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49055:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10863, + "nodeType": "ExpressionStatement", + "src": "49055:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48982:3:4", + "parameters": { + "id": 10851, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10844, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48991:2:4", + "nodeType": "VariableDeclaration", + "scope": 10865, + "src": "48986:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10843, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48986:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10846, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49000:2:4", + "nodeType": "VariableDeclaration", + "scope": 10865, + "src": "48995:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10845, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48995:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10848, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49009:2:4", + "nodeType": "VariableDeclaration", + "scope": 10865, + "src": "49004:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10847, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "49004:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10850, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49027:2:4", + "nodeType": "VariableDeclaration", + "scope": 10865, + "src": "49013:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10849, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49013:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "48985:45:4" + }, + "returnParameters": { + "id": 10852, + "nodeType": "ParameterList", + "parameters": [], + "src": "49045:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10888, + "nodeType": "FunctionDefinition", + "src": "49154:164:4", + "body": { + "id": 10887, + "nodeType": "Block", + "src": "49217:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e742c626f6f6c29", + "id": 10879, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49267:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ab5cc1c47d926d79461c86216768f32b6ec0ac12d51c1eb543ea3bd1cfec0110", + "typeString": "literal_string \"log(bool,bool,uint,bool)\"" + }, + "value": "log(bool,bool,uint,bool)" + }, + { + "id": 10880, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10867, + "src": "49295:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10881, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10869, + "src": "49299:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10882, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10871, + "src": "49303:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10883, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10873, + "src": "49307:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ab5cc1c47d926d79461c86216768f32b6ec0ac12d51c1eb543ea3bd1cfec0110", + "typeString": "literal_string \"log(bool,bool,uint,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10877, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49243:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49243:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49243:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10876, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49227:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49227:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10886, + "nodeType": "ExpressionStatement", + "src": "49227:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49163:3:4", + "parameters": { + "id": 10874, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10867, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49172:2:4", + "nodeType": "VariableDeclaration", + "scope": 10888, + "src": "49167:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10866, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49167:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10869, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49181:2:4", + "nodeType": "VariableDeclaration", + "scope": 10888, + "src": "49176:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10868, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49176:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10871, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49190:2:4", + "nodeType": "VariableDeclaration", + "scope": 10888, + "src": "49185:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10870, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "49185:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10873, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49199:2:4", + "nodeType": "VariableDeclaration", + "scope": 10888, + "src": "49194:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10872, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49194:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "49166:36:4" + }, + "returnParameters": { + "id": 10875, + "nodeType": "ParameterList", + "parameters": [], + "src": "49217:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10911, + "nodeType": "FunctionDefinition", + "src": "49324:170:4", + "body": { + "id": 10910, + "nodeType": "Block", + "src": "49390:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e742c6164647265737329", + "id": 10902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49440:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0bff950dc175e3e278946e4adb75fffc4ee67cda33555121dd293b95b27a39a7", + "typeString": "literal_string \"log(bool,bool,uint,address)\"" + }, + "value": "log(bool,bool,uint,address)" + }, + { + "id": 10903, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10890, + "src": "49471:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10904, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10892, + "src": "49475:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10905, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10894, + "src": "49479:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 10906, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10896, + "src": "49483:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0bff950dc175e3e278946e4adb75fffc4ee67cda33555121dd293b95b27a39a7", + "typeString": "literal_string \"log(bool,bool,uint,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10900, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49416:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10901, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49416:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10907, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49416:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10899, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49400:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49400:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10909, + "nodeType": "ExpressionStatement", + "src": "49400:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49333:3:4", + "parameters": { + "id": 10897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10890, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49342:2:4", + "nodeType": "VariableDeclaration", + "scope": 10911, + "src": "49337:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10889, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49337:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10892, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49351:2:4", + "nodeType": "VariableDeclaration", + "scope": 10911, + "src": "49346:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10891, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49346:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10894, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49360:2:4", + "nodeType": "VariableDeclaration", + "scope": 10911, + "src": "49355:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10893, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "49355:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10896, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49372:2:4", + "nodeType": "VariableDeclaration", + "scope": 10911, + "src": "49364:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10895, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49364:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "49336:39:4" + }, + "returnParameters": { + "id": 10898, + "nodeType": "ParameterList", + "parameters": [], + "src": "49390:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10934, + "nodeType": "FunctionDefinition", + "src": "49500:175:4", + "body": { + "id": 10933, + "nodeType": "Block", + "src": "49572:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c75696e7429", + "id": 10925, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49622:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_178b4685db1dff62c4ee472c2e6bf50abba0dc230768235e43c6259152d1244e", + "typeString": "literal_string \"log(bool,bool,string,uint)\"" + }, + "value": "log(bool,bool,string,uint)" + }, + { + "id": 10926, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10913, + "src": "49652:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10927, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10915, + "src": "49656:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10928, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10917, + "src": "49660:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10929, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10919, + "src": "49664:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_178b4685db1dff62c4ee472c2e6bf50abba0dc230768235e43c6259152d1244e", + "typeString": "literal_string \"log(bool,bool,string,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 10923, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49598:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10924, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49598:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49598:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10922, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49582:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10931, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49582:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10932, + "nodeType": "ExpressionStatement", + "src": "49582:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49509:3:4", + "parameters": { + "id": 10920, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10913, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49518:2:4", + "nodeType": "VariableDeclaration", + "scope": 10934, + "src": "49513:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10912, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49513:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10915, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49527:2:4", + "nodeType": "VariableDeclaration", + "scope": 10934, + "src": "49522:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10914, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49522:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10917, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49545:2:4", + "nodeType": "VariableDeclaration", + "scope": 10934, + "src": "49531:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10916, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49531:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10919, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49554:2:4", + "nodeType": "VariableDeclaration", + "scope": 10934, + "src": "49549:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10918, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "49549:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "49512:45:4" + }, + "returnParameters": { + "id": 10921, + "nodeType": "ParameterList", + "parameters": [], + "src": "49572:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10957, + "nodeType": "FunctionDefinition", + "src": "49681:186:4", + "body": { + "id": 10956, + "nodeType": "Block", + "src": "49762:105:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c737472696e6729", + "id": 10948, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49812:30:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + "value": "log(bool,bool,string,string)" + }, + { + "id": 10949, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10936, + "src": "49844:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10950, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10938, + "src": "49848:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10951, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10940, + "src": "49852:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10952, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10942, + "src": "49856:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 10946, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49788:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10947, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49788:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49788:71:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10945, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49772:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49772:88:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10955, + "nodeType": "ExpressionStatement", + "src": "49772:88:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49690:3:4", + "parameters": { + "id": 10943, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10936, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49699:2:4", + "nodeType": "VariableDeclaration", + "scope": 10957, + "src": "49694:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10935, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49694:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10938, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49708:2:4", + "nodeType": "VariableDeclaration", + "scope": 10957, + "src": "49703:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10937, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49703:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10940, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49726:2:4", + "nodeType": "VariableDeclaration", + "scope": 10957, + "src": "49712:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10939, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49712:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10942, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49744:2:4", + "nodeType": "VariableDeclaration", + "scope": 10957, + "src": "49730:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10941, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49730:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "49693:54:4" + }, + "returnParameters": { + "id": 10944, + "nodeType": "ParameterList", + "parameters": [], + "src": "49762:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 10980, + "nodeType": "FunctionDefinition", + "src": "49873:175:4", + "body": { + "id": 10979, + "nodeType": "Block", + "src": "49945:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c626f6f6c29", + "id": 10971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49995:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + "value": "log(bool,bool,string,bool)" + }, + { + "id": 10972, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10959, + "src": "50025:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10973, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10961, + "src": "50029:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10974, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10963, + "src": "50033:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10975, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10965, + "src": "50037:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 10969, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49971:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49971:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49971:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10968, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "49955:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 10977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49955:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 10978, + "nodeType": "ExpressionStatement", + "src": "49955:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49882:3:4", + "parameters": { + "id": 10966, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10959, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49891:2:4", + "nodeType": "VariableDeclaration", + "scope": 10980, + "src": "49886:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10958, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49886:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10961, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49900:2:4", + "nodeType": "VariableDeclaration", + "scope": 10980, + "src": "49895:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10960, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49895:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10963, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49918:2:4", + "nodeType": "VariableDeclaration", + "scope": 10980, + "src": "49904:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10962, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49904:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10965, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49927:2:4", + "nodeType": "VariableDeclaration", + "scope": 10980, + "src": "49922:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10964, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49922:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "49885:45:4" + }, + "returnParameters": { + "id": 10967, + "nodeType": "ParameterList", + "parameters": [], + "src": "49945:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11003, + "nodeType": "FunctionDefinition", + "src": "50054:181:4", + "body": { + "id": 11002, + "nodeType": "Block", + "src": "50129:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c6164647265737329", + "id": 10994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50179:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + "value": "log(bool,bool,string,address)" + }, + { + "id": 10995, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10982, + "src": "50212:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10996, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10984, + "src": "50216:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 10997, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10986, + "src": "50220:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 10998, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10988, + "src": "50224:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 10992, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50155:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 10993, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50155:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 10999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50155:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 10991, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "50139:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50139:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11001, + "nodeType": "ExpressionStatement", + "src": "50139:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50063:3:4", + "parameters": { + "id": 10989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 10982, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50072:2:4", + "nodeType": "VariableDeclaration", + "scope": 11003, + "src": "50067:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10981, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50067:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10984, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50081:2:4", + "nodeType": "VariableDeclaration", + "scope": 11003, + "src": "50076:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 10983, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50076:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10986, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50099:2:4", + "nodeType": "VariableDeclaration", + "scope": 11003, + "src": "50085:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 10985, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50085:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 10988, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50111:2:4", + "nodeType": "VariableDeclaration", + "scope": 11003, + "src": "50103:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10987, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50103:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "50066:48:4" + }, + "returnParameters": { + "id": 10990, + "nodeType": "ParameterList", + "parameters": [], + "src": "50129:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11026, + "nodeType": "FunctionDefinition", + "src": "50241:164:4", + "body": { + "id": 11025, + "nodeType": "Block", + "src": "50304:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c75696e7429", + "id": 11017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50354:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c248834dff84ca4bcbda9cf249a0d5da3bd0a58b4562085082654d4d9851b501", + "typeString": "literal_string \"log(bool,bool,bool,uint)\"" + }, + "value": "log(bool,bool,bool,uint)" + }, + { + "id": 11018, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11005, + "src": "50382:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11019, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11007, + "src": "50386:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11020, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11009, + "src": "50390:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11021, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11011, + "src": "50394:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c248834dff84ca4bcbda9cf249a0d5da3bd0a58b4562085082654d4d9851b501", + "typeString": "literal_string \"log(bool,bool,bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11015, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50330:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11016, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50330:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50330:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11014, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "50314:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50314:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11024, + "nodeType": "ExpressionStatement", + "src": "50314:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50250:3:4", + "parameters": { + "id": 11012, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11005, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50259:2:4", + "nodeType": "VariableDeclaration", + "scope": 11026, + "src": "50254:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11004, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50254:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11007, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50268:2:4", + "nodeType": "VariableDeclaration", + "scope": 11026, + "src": "50263:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11006, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50263:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11009, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50277:2:4", + "nodeType": "VariableDeclaration", + "scope": 11026, + "src": "50272:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11008, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50272:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11011, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50286:2:4", + "nodeType": "VariableDeclaration", + "scope": 11026, + "src": "50281:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11010, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "50281:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "50253:36:4" + }, + "returnParameters": { + "id": 11013, + "nodeType": "ParameterList", + "parameters": [], + "src": "50304:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11049, + "nodeType": "FunctionDefinition", + "src": "50411:175:4", + "body": { + "id": 11048, + "nodeType": "Block", + "src": "50483:103:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c737472696e6729", + "id": 11040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50533:28:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + "value": "log(bool,bool,bool,string)" + }, + { + "id": 11041, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11028, + "src": "50563:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11042, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11030, + "src": "50567:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11043, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11032, + "src": "50571:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11044, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11034, + "src": "50575:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11038, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50509:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11039, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50509:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50509:69:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11037, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "50493:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11046, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50493:86:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11047, + "nodeType": "ExpressionStatement", + "src": "50493:86:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50420:3:4", + "parameters": { + "id": 11035, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11028, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50429:2:4", + "nodeType": "VariableDeclaration", + "scope": 11049, + "src": "50424:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11027, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50424:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11030, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50438:2:4", + "nodeType": "VariableDeclaration", + "scope": 11049, + "src": "50433:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11029, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50433:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11032, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50447:2:4", + "nodeType": "VariableDeclaration", + "scope": 11049, + "src": "50442:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11031, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50442:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11034, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50465:2:4", + "nodeType": "VariableDeclaration", + "scope": 11049, + "src": "50451:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11033, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50451:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "50423:45:4" + }, + "returnParameters": { + "id": 11036, + "nodeType": "ParameterList", + "parameters": [], + "src": "50483:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11072, + "nodeType": "FunctionDefinition", + "src": "50592:164:4", + "body": { + "id": 11071, + "nodeType": "Block", + "src": "50655:101:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 11063, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50705:26:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool,bool)" + }, + { + "id": 11064, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11051, + "src": "50733:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11065, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11053, + "src": "50737:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11066, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11055, + "src": "50741:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11067, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11057, + "src": "50745:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11061, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50681:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11062, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50681:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50681:67:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11060, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "50665:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50665:84:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11070, + "nodeType": "ExpressionStatement", + "src": "50665:84:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50601:3:4", + "parameters": { + "id": 11058, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11051, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50610:2:4", + "nodeType": "VariableDeclaration", + "scope": 11072, + "src": "50605:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11050, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50605:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11053, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50619:2:4", + "nodeType": "VariableDeclaration", + "scope": 11072, + "src": "50614:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11052, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50614:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11055, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50628:2:4", + "nodeType": "VariableDeclaration", + "scope": 11072, + "src": "50623:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11054, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50623:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11057, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50637:2:4", + "nodeType": "VariableDeclaration", + "scope": 11072, + "src": "50632:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11056, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50632:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "50604:36:4" + }, + "returnParameters": { + "id": 11059, + "nodeType": "ParameterList", + "parameters": [], + "src": "50655:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11095, + "nodeType": "FunctionDefinition", + "src": "50762:170:4", + "body": { + "id": 11094, + "nodeType": "Block", + "src": "50828:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c6164647265737329", + "id": 11086, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50878:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + "value": "log(bool,bool,bool,address)" + }, + { + "id": 11087, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11074, + "src": "50909:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11088, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11076, + "src": "50913:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11089, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11078, + "src": "50917:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11090, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11080, + "src": "50921:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11084, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50854:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11085, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50854:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50854:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11083, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "50838:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50838:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11093, + "nodeType": "ExpressionStatement", + "src": "50838:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50771:3:4", + "parameters": { + "id": 11081, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11074, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50780:2:4", + "nodeType": "VariableDeclaration", + "scope": 11095, + "src": "50775:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11073, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50775:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11076, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50789:2:4", + "nodeType": "VariableDeclaration", + "scope": 11095, + "src": "50784:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11075, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50784:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11078, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50798:2:4", + "nodeType": "VariableDeclaration", + "scope": 11095, + "src": "50793:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11077, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50793:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11080, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50810:2:4", + "nodeType": "VariableDeclaration", + "scope": 11095, + "src": "50802:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11079, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50802:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "50774:39:4" + }, + "returnParameters": { + "id": 11082, + "nodeType": "ParameterList", + "parameters": [], + "src": "50828:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11118, + "nodeType": "FunctionDefinition", + "src": "50938:170:4", + "body": { + "id": 11117, + "nodeType": "Block", + "src": "51004:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c75696e7429", + "id": 11109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51054:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_609386e78fd5b0eaf4b919077203f18b1606ddf72247d9e5eef9238918f7cf5e", + "typeString": "literal_string \"log(bool,bool,address,uint)\"" + }, + "value": "log(bool,bool,address,uint)" + }, + { + "id": 11110, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11097, + "src": "51085:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11111, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11099, + "src": "51089:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11112, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11101, + "src": "51093:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11113, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11103, + "src": "51097:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_609386e78fd5b0eaf4b919077203f18b1606ddf72247d9e5eef9238918f7cf5e", + "typeString": "literal_string \"log(bool,bool,address,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11107, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51030:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51030:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51030:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11106, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51014:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51014:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11116, + "nodeType": "ExpressionStatement", + "src": "51014:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50947:3:4", + "parameters": { + "id": 11104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11097, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50956:2:4", + "nodeType": "VariableDeclaration", + "scope": 11118, + "src": "50951:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11096, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50951:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11099, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50965:2:4", + "nodeType": "VariableDeclaration", + "scope": 11118, + "src": "50960:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11098, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50960:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11101, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50977:2:4", + "nodeType": "VariableDeclaration", + "scope": 11118, + "src": "50969:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50969:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11103, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50986:2:4", + "nodeType": "VariableDeclaration", + "scope": 11118, + "src": "50981:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11102, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "50981:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "50950:39:4" + }, + "returnParameters": { + "id": 11105, + "nodeType": "ParameterList", + "parameters": [], + "src": "51004:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11141, + "nodeType": "FunctionDefinition", + "src": "51114:181:4", + "body": { + "id": 11140, + "nodeType": "Block", + "src": "51189:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c737472696e6729", + "id": 11132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51239:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + "value": "log(bool,bool,address,string)" + }, + { + "id": 11133, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11120, + "src": "51272:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11134, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11122, + "src": "51276:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11135, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11124, + "src": "51280:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11136, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11126, + "src": "51284:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11130, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51215:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11131, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51215:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11137, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51215:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11129, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51199:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51199:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11139, + "nodeType": "ExpressionStatement", + "src": "51199:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51123:3:4", + "parameters": { + "id": 11127, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11120, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51132:2:4", + "nodeType": "VariableDeclaration", + "scope": 11141, + "src": "51127:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11119, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51127:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11122, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51141:2:4", + "nodeType": "VariableDeclaration", + "scope": 11141, + "src": "51136:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11121, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51136:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11124, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51153:2:4", + "nodeType": "VariableDeclaration", + "scope": 11141, + "src": "51145:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51145:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11126, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51171:2:4", + "nodeType": "VariableDeclaration", + "scope": 11141, + "src": "51157:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11125, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51157:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "51126:48:4" + }, + "returnParameters": { + "id": 11128, + "nodeType": "ParameterList", + "parameters": [], + "src": "51189:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11164, + "nodeType": "FunctionDefinition", + "src": "51301:170:4", + "body": { + "id": 11163, + "nodeType": "Block", + "src": "51367:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c626f6f6c29", + "id": 11155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51417:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + "value": "log(bool,bool,address,bool)" + }, + { + "id": 11156, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11143, + "src": "51448:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11157, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11145, + "src": "51452:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11158, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11147, + "src": "51456:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11159, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11149, + "src": "51460:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51393:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51393:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51393:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11152, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51377:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11161, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51377:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11162, + "nodeType": "ExpressionStatement", + "src": "51377:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51310:3:4", + "parameters": { + "id": 11150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11143, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51319:2:4", + "nodeType": "VariableDeclaration", + "scope": 11164, + "src": "51314:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11142, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51314:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11145, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51328:2:4", + "nodeType": "VariableDeclaration", + "scope": 11164, + "src": "51323:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11144, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51323:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11147, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51340:2:4", + "nodeType": "VariableDeclaration", + "scope": 11164, + "src": "51332:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11146, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51332:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11149, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51349:2:4", + "nodeType": "VariableDeclaration", + "scope": 11164, + "src": "51344:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11148, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51344:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "51313:39:4" + }, + "returnParameters": { + "id": 11151, + "nodeType": "ParameterList", + "parameters": [], + "src": "51367:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11187, + "nodeType": "FunctionDefinition", + "src": "51477:176:4", + "body": { + "id": 11186, + "nodeType": "Block", + "src": "51546:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c6164647265737329", + "id": 11178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51596:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + "value": "log(bool,bool,address,address)" + }, + { + "id": 11179, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11166, + "src": "51630:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11180, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11168, + "src": "51634:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11181, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11170, + "src": "51638:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11182, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11172, + "src": "51642:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11176, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51572:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51572:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11183, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51572:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11175, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51556:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11184, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51556:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11185, + "nodeType": "ExpressionStatement", + "src": "51556:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51486:3:4", + "parameters": { + "id": 11173, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11166, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51495:2:4", + "nodeType": "VariableDeclaration", + "scope": 11187, + "src": "51490:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11165, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51490:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11168, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51504:2:4", + "nodeType": "VariableDeclaration", + "scope": 11187, + "src": "51499:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11167, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51499:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11170, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51516:2:4", + "nodeType": "VariableDeclaration", + "scope": 11187, + "src": "51508:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11169, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51508:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11172, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51528:2:4", + "nodeType": "VariableDeclaration", + "scope": 11187, + "src": "51520:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11171, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51520:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "51489:42:4" + }, + "returnParameters": { + "id": 11174, + "nodeType": "ParameterList", + "parameters": [], + "src": "51546:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11210, + "nodeType": "FunctionDefinition", + "src": "51659:170:4", + "body": { + "id": 11209, + "nodeType": "Block", + "src": "51725:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e742c75696e7429", + "id": 11201, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51775:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9bfe72bcae17311bf78638487cb2635e8b5b6f81761042494681e890b65ae4df", + "typeString": "literal_string \"log(bool,address,uint,uint)\"" + }, + "value": "log(bool,address,uint,uint)" + }, + { + "id": 11202, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11189, + "src": "51806:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11203, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11191, + "src": "51810:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11204, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11193, + "src": "51814:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11205, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11195, + "src": "51818:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9bfe72bcae17311bf78638487cb2635e8b5b6f81761042494681e890b65ae4df", + "typeString": "literal_string \"log(bool,address,uint,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11199, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51751:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51751:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51751:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11198, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51735:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11207, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51735:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11208, + "nodeType": "ExpressionStatement", + "src": "51735:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51668:3:4", + "parameters": { + "id": 11196, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11189, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51677:2:4", + "nodeType": "VariableDeclaration", + "scope": 11210, + "src": "51672:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11188, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51672:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11191, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51689:2:4", + "nodeType": "VariableDeclaration", + "scope": 11210, + "src": "51681:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11190, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51681:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11193, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51698:2:4", + "nodeType": "VariableDeclaration", + "scope": 11210, + "src": "51693:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11192, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "51693:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11195, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51707:2:4", + "nodeType": "VariableDeclaration", + "scope": 11210, + "src": "51702:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11194, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "51702:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "51671:39:4" + }, + "returnParameters": { + "id": 11197, + "nodeType": "ParameterList", + "parameters": [], + "src": "51725:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11233, + "nodeType": "FunctionDefinition", + "src": "51835:181:4", + "body": { + "id": 11232, + "nodeType": "Block", + "src": "51910:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e742c737472696e6729", + "id": 11224, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51960:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0685833a55270d98fa68e8c0a0f64fe3e03f6cdaeaebd8f87342de905392f45", + "typeString": "literal_string \"log(bool,address,uint,string)\"" + }, + "value": "log(bool,address,uint,string)" + }, + { + "id": 11225, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11212, + "src": "51993:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11226, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11214, + "src": "51997:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11227, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11216, + "src": "52001:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11228, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11218, + "src": "52005:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0685833a55270d98fa68e8c0a0f64fe3e03f6cdaeaebd8f87342de905392f45", + "typeString": "literal_string \"log(bool,address,uint,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11222, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51936:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11223, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51936:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51936:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11221, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "51920:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11230, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51920:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11231, + "nodeType": "ExpressionStatement", + "src": "51920:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51844:3:4", + "parameters": { + "id": 11219, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11212, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51853:2:4", + "nodeType": "VariableDeclaration", + "scope": 11233, + "src": "51848:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11211, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51848:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11214, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51865:2:4", + "nodeType": "VariableDeclaration", + "scope": 11233, + "src": "51857:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11213, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51857:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11216, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51874:2:4", + "nodeType": "VariableDeclaration", + "scope": 11233, + "src": "51869:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11215, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "51869:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11218, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51892:2:4", + "nodeType": "VariableDeclaration", + "scope": 11233, + "src": "51878:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11217, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51878:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "51847:48:4" + }, + "returnParameters": { + "id": 11220, + "nodeType": "ParameterList", + "parameters": [], + "src": "51910:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11256, + "nodeType": "FunctionDefinition", + "src": "52022:170:4", + "body": { + "id": 11255, + "nodeType": "Block", + "src": "52088:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e742c626f6f6c29", + "id": 11247, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52138:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ee8d8672273fdba9089296874ea62335af7f94273edab558dd69c0c81ad5275f", + "typeString": "literal_string \"log(bool,address,uint,bool)\"" + }, + "value": "log(bool,address,uint,bool)" + }, + { + "id": 11248, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11235, + "src": "52169:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11249, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11237, + "src": "52173:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11250, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11239, + "src": "52177:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11251, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11241, + "src": "52181:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ee8d8672273fdba9089296874ea62335af7f94273edab558dd69c0c81ad5275f", + "typeString": "literal_string \"log(bool,address,uint,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11245, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52114:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11246, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52114:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52114:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11244, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "52098:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52098:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11254, + "nodeType": "ExpressionStatement", + "src": "52098:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52031:3:4", + "parameters": { + "id": 11242, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11235, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52040:2:4", + "nodeType": "VariableDeclaration", + "scope": 11256, + "src": "52035:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11234, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52035:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11237, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52052:2:4", + "nodeType": "VariableDeclaration", + "scope": 11256, + "src": "52044:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52044:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11239, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52061:2:4", + "nodeType": "VariableDeclaration", + "scope": 11256, + "src": "52056:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11238, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "52056:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11241, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52070:2:4", + "nodeType": "VariableDeclaration", + "scope": 11256, + "src": "52065:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11240, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52065:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "52034:39:4" + }, + "returnParameters": { + "id": 11243, + "nodeType": "ParameterList", + "parameters": [], + "src": "52088:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11279, + "nodeType": "FunctionDefinition", + "src": "52198:176:4", + "body": { + "id": 11278, + "nodeType": "Block", + "src": "52267:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e742c6164647265737329", + "id": 11270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52317:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_68f158b5f9bd826807d19c20c2d71bd298a10503195154a299bf8d64baa18687", + "typeString": "literal_string \"log(bool,address,uint,address)\"" + }, + "value": "log(bool,address,uint,address)" + }, + { + "id": 11271, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11258, + "src": "52351:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11272, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11260, + "src": "52355:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11273, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11262, + "src": "52359:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11274, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11264, + "src": "52363:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_68f158b5f9bd826807d19c20c2d71bd298a10503195154a299bf8d64baa18687", + "typeString": "literal_string \"log(bool,address,uint,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11268, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52293:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52293:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52293:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11267, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "52277:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11276, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52277:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11277, + "nodeType": "ExpressionStatement", + "src": "52277:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52207:3:4", + "parameters": { + "id": 11265, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11258, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52216:2:4", + "nodeType": "VariableDeclaration", + "scope": 11279, + "src": "52211:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11257, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52211:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11260, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52228:2:4", + "nodeType": "VariableDeclaration", + "scope": 11279, + "src": "52220:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11259, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52220:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11262, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52237:2:4", + "nodeType": "VariableDeclaration", + "scope": 11279, + "src": "52232:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11261, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "52232:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11264, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52249:2:4", + "nodeType": "VariableDeclaration", + "scope": 11279, + "src": "52241:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11263, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52241:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52210:42:4" + }, + "returnParameters": { + "id": 11266, + "nodeType": "ParameterList", + "parameters": [], + "src": "52267:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11302, + "nodeType": "FunctionDefinition", + "src": "52380:181:4", + "body": { + "id": 11301, + "nodeType": "Block", + "src": "52455:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c75696e7429", + "id": 11293, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52505:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0b99fc2207222410afd35c7faf7feba54ff2367ba89f893584c27ce75693de6e", + "typeString": "literal_string \"log(bool,address,string,uint)\"" + }, + "value": "log(bool,address,string,uint)" + }, + { + "id": 11294, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11281, + "src": "52538:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11295, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11283, + "src": "52542:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11296, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11285, + "src": "52546:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11297, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11287, + "src": "52550:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0b99fc2207222410afd35c7faf7feba54ff2367ba89f893584c27ce75693de6e", + "typeString": "literal_string \"log(bool,address,string,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11291, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52481:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11292, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52481:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52481:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11290, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "52465:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52465:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11300, + "nodeType": "ExpressionStatement", + "src": "52465:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52389:3:4", + "parameters": { + "id": 11288, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11281, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52398:2:4", + "nodeType": "VariableDeclaration", + "scope": 11302, + "src": "52393:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11280, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52393:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11283, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52410:2:4", + "nodeType": "VariableDeclaration", + "scope": 11302, + "src": "52402:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11282, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52402:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11285, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52428:2:4", + "nodeType": "VariableDeclaration", + "scope": 11302, + "src": "52414:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11284, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52414:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11287, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52437:2:4", + "nodeType": "VariableDeclaration", + "scope": 11302, + "src": "52432:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11286, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "52432:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "52392:48:4" + }, + "returnParameters": { + "id": 11289, + "nodeType": "ParameterList", + "parameters": [], + "src": "52455:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11325, + "nodeType": "FunctionDefinition", + "src": "52567:192:4", + "body": { + "id": 11324, + "nodeType": "Block", + "src": "52651:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c737472696e6729", + "id": 11316, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52701:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + "value": "log(bool,address,string,string)" + }, + { + "id": 11317, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11304, + "src": "52736:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11318, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11306, + "src": "52740:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11319, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11308, + "src": "52744:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11320, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11310, + "src": "52748:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11314, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52677:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52677:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11321, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52677:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11313, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "52661:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52661:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11323, + "nodeType": "ExpressionStatement", + "src": "52661:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52576:3:4", + "parameters": { + "id": 11311, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11304, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52585:2:4", + "nodeType": "VariableDeclaration", + "scope": 11325, + "src": "52580:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11303, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52580:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11306, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52597:2:4", + "nodeType": "VariableDeclaration", + "scope": 11325, + "src": "52589:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11305, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52589:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11308, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52615:2:4", + "nodeType": "VariableDeclaration", + "scope": 11325, + "src": "52601:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11307, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52601:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11310, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52633:2:4", + "nodeType": "VariableDeclaration", + "scope": 11325, + "src": "52619:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11309, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52619:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "52579:57:4" + }, + "returnParameters": { + "id": 11312, + "nodeType": "ParameterList", + "parameters": [], + "src": "52651:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11348, + "nodeType": "FunctionDefinition", + "src": "52765:181:4", + "body": { + "id": 11347, + "nodeType": "Block", + "src": "52840:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c626f6f6c29", + "id": 11339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52890:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + "value": "log(bool,address,string,bool)" + }, + { + "id": 11340, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11327, + "src": "52923:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11341, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11329, + "src": "52927:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11342, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11331, + "src": "52931:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11343, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11333, + "src": "52935:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11337, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52866:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11338, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52866:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52866:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11336, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "52850:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11345, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52850:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11346, + "nodeType": "ExpressionStatement", + "src": "52850:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52774:3:4", + "parameters": { + "id": 11334, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11327, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52783:2:4", + "nodeType": "VariableDeclaration", + "scope": 11348, + "src": "52778:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11326, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52778:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11329, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52795:2:4", + "nodeType": "VariableDeclaration", + "scope": 11348, + "src": "52787:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11328, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52787:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11331, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52813:2:4", + "nodeType": "VariableDeclaration", + "scope": 11348, + "src": "52799:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11330, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52799:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11333, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52822:2:4", + "nodeType": "VariableDeclaration", + "scope": 11348, + "src": "52817:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11332, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52817:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "52777:48:4" + }, + "returnParameters": { + "id": 11335, + "nodeType": "ParameterList", + "parameters": [], + "src": "52840:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11371, + "nodeType": "FunctionDefinition", + "src": "52952:187:4", + "body": { + "id": 11370, + "nodeType": "Block", + "src": "53030:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c6164647265737329", + "id": 11362, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53080:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + "value": "log(bool,address,string,address)" + }, + { + "id": 11363, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11350, + "src": "53116:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11364, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11352, + "src": "53120:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11365, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11354, + "src": "53124:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11366, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11356, + "src": "53128:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11360, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53056:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11361, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53056:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53056:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11359, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53040:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53040:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11369, + "nodeType": "ExpressionStatement", + "src": "53040:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52961:3:4", + "parameters": { + "id": 11357, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11350, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52970:2:4", + "nodeType": "VariableDeclaration", + "scope": 11371, + "src": "52965:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11349, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52965:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11352, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52982:2:4", + "nodeType": "VariableDeclaration", + "scope": 11371, + "src": "52974:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52974:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11354, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53000:2:4", + "nodeType": "VariableDeclaration", + "scope": 11371, + "src": "52986:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11353, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52986:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11356, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53012:2:4", + "nodeType": "VariableDeclaration", + "scope": 11371, + "src": "53004:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11355, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53004:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52964:51:4" + }, + "returnParameters": { + "id": 11358, + "nodeType": "ParameterList", + "parameters": [], + "src": "53030:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11394, + "nodeType": "FunctionDefinition", + "src": "53145:170:4", + "body": { + "id": 11393, + "nodeType": "Block", + "src": "53211:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c75696e7429", + "id": 11385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53261:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4cb60fd1171fb665e1565124463601e5c451a362c8efbc6e1fcfbffbbb9850d9", + "typeString": "literal_string \"log(bool,address,bool,uint)\"" + }, + "value": "log(bool,address,bool,uint)" + }, + { + "id": 11386, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11373, + "src": "53292:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11387, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11375, + "src": "53296:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11388, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11377, + "src": "53300:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11389, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11379, + "src": "53304:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4cb60fd1171fb665e1565124463601e5c451a362c8efbc6e1fcfbffbbb9850d9", + "typeString": "literal_string \"log(bool,address,bool,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11383, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53237:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11384, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53237:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53237:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11382, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53221:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11391, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53221:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11392, + "nodeType": "ExpressionStatement", + "src": "53221:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53154:3:4", + "parameters": { + "id": 11380, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11373, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53163:2:4", + "nodeType": "VariableDeclaration", + "scope": 11394, + "src": "53158:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11372, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53158:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11375, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53175:2:4", + "nodeType": "VariableDeclaration", + "scope": 11394, + "src": "53167:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11374, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53167:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11377, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53184:2:4", + "nodeType": "VariableDeclaration", + "scope": 11394, + "src": "53179:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11376, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53179:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11379, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53193:2:4", + "nodeType": "VariableDeclaration", + "scope": 11394, + "src": "53188:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11378, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "53188:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "53157:39:4" + }, + "returnParameters": { + "id": 11381, + "nodeType": "ParameterList", + "parameters": [], + "src": "53211:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11417, + "nodeType": "FunctionDefinition", + "src": "53321:181:4", + "body": { + "id": 11416, + "nodeType": "Block", + "src": "53396:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c737472696e6729", + "id": 11408, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53446:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + "value": "log(bool,address,bool,string)" + }, + { + "id": 11409, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11396, + "src": "53479:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11410, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11398, + "src": "53483:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11411, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11400, + "src": "53487:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11412, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11402, + "src": "53491:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11406, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53422:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53422:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11413, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53422:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11405, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53406:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53406:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11415, + "nodeType": "ExpressionStatement", + "src": "53406:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53330:3:4", + "parameters": { + "id": 11403, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11396, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53339:2:4", + "nodeType": "VariableDeclaration", + "scope": 11417, + "src": "53334:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11395, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53334:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11398, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53351:2:4", + "nodeType": "VariableDeclaration", + "scope": 11417, + "src": "53343:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53343:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11400, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53360:2:4", + "nodeType": "VariableDeclaration", + "scope": 11417, + "src": "53355:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11399, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53355:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11402, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53378:2:4", + "nodeType": "VariableDeclaration", + "scope": 11417, + "src": "53364:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11401, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "53364:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "53333:48:4" + }, + "returnParameters": { + "id": 11404, + "nodeType": "ParameterList", + "parameters": [], + "src": "53396:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11440, + "nodeType": "FunctionDefinition", + "src": "53508:170:4", + "body": { + "id": 11439, + "nodeType": "Block", + "src": "53574:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c626f6f6c29", + "id": 11431, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53624:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + "value": "log(bool,address,bool,bool)" + }, + { + "id": 11432, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11419, + "src": "53655:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11433, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11421, + "src": "53659:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11434, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11423, + "src": "53663:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11435, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11425, + "src": "53667:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11429, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53600:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11430, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53600:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53600:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11428, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53584:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53584:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11438, + "nodeType": "ExpressionStatement", + "src": "53584:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53517:3:4", + "parameters": { + "id": 11426, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11419, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53526:2:4", + "nodeType": "VariableDeclaration", + "scope": 11440, + "src": "53521:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11418, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53521:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11421, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53538:2:4", + "nodeType": "VariableDeclaration", + "scope": 11440, + "src": "53530:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11420, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53530:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11423, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53547:2:4", + "nodeType": "VariableDeclaration", + "scope": 11440, + "src": "53542:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11422, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53542:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11425, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53556:2:4", + "nodeType": "VariableDeclaration", + "scope": 11440, + "src": "53551:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11424, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53551:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "53520:39:4" + }, + "returnParameters": { + "id": 11427, + "nodeType": "ParameterList", + "parameters": [], + "src": "53574:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11463, + "nodeType": "FunctionDefinition", + "src": "53684:176:4", + "body": { + "id": 11462, + "nodeType": "Block", + "src": "53753:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c6164647265737329", + "id": 11454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53803:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + "value": "log(bool,address,bool,address)" + }, + { + "id": 11455, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11442, + "src": "53837:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11456, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11444, + "src": "53841:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11457, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11446, + "src": "53845:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11458, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11448, + "src": "53849:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11452, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53779:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11453, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53779:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53779:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11451, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53763:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53763:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11461, + "nodeType": "ExpressionStatement", + "src": "53763:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53693:3:4", + "parameters": { + "id": 11449, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11442, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53702:2:4", + "nodeType": "VariableDeclaration", + "scope": 11463, + "src": "53697:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11441, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53697:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11444, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53714:2:4", + "nodeType": "VariableDeclaration", + "scope": 11463, + "src": "53706:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53706:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11446, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53723:2:4", + "nodeType": "VariableDeclaration", + "scope": 11463, + "src": "53718:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11445, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53718:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11448, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53735:2:4", + "nodeType": "VariableDeclaration", + "scope": 11463, + "src": "53727:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11447, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53727:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "53696:42:4" + }, + "returnParameters": { + "id": 11450, + "nodeType": "ParameterList", + "parameters": [], + "src": "53753:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11486, + "nodeType": "FunctionDefinition", + "src": "53866:176:4", + "body": { + "id": 11485, + "nodeType": "Block", + "src": "53935:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c75696e7429", + "id": 11477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53985:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5284bd6c2d02d32d79d43dcd0793be5ced63bf4e51bea38208974f6d8ca5def7", + "typeString": "literal_string \"log(bool,address,address,uint)\"" + }, + "value": "log(bool,address,address,uint)" + }, + { + "id": 11478, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11465, + "src": "54019:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11479, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11467, + "src": "54023:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11480, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11469, + "src": "54027:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11481, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11471, + "src": "54031:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5284bd6c2d02d32d79d43dcd0793be5ced63bf4e51bea38208974f6d8ca5def7", + "typeString": "literal_string \"log(bool,address,address,uint)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11475, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53961:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11476, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53961:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53961:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11474, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "53945:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53945:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11484, + "nodeType": "ExpressionStatement", + "src": "53945:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53875:3:4", + "parameters": { + "id": 11472, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11465, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53884:2:4", + "nodeType": "VariableDeclaration", + "scope": 11486, + "src": "53879:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53879:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11467, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53896:2:4", + "nodeType": "VariableDeclaration", + "scope": 11486, + "src": "53888:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11466, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53888:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11469, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53908:2:4", + "nodeType": "VariableDeclaration", + "scope": 11486, + "src": "53900:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11468, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53900:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11471, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53917:2:4", + "nodeType": "VariableDeclaration", + "scope": 11486, + "src": "53912:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11470, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "53912:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "53878:42:4" + }, + "returnParameters": { + "id": 11473, + "nodeType": "ParameterList", + "parameters": [], + "src": "53935:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11509, + "nodeType": "FunctionDefinition", + "src": "54048:187:4", + "body": { + "id": 11508, + "nodeType": "Block", + "src": "54126:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c737472696e6729", + "id": 11500, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54176:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + "value": "log(bool,address,address,string)" + }, + { + "id": 11501, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11488, + "src": "54212:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11502, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11490, + "src": "54216:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11503, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11492, + "src": "54220:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11504, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11494, + "src": "54224:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11498, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54152:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11499, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54152:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54152:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11497, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "54136:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54136:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11507, + "nodeType": "ExpressionStatement", + "src": "54136:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54057:3:4", + "parameters": { + "id": 11495, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11488, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54066:2:4", + "nodeType": "VariableDeclaration", + "scope": 11509, + "src": "54061:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11487, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54061:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11490, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54078:2:4", + "nodeType": "VariableDeclaration", + "scope": 11509, + "src": "54070:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11489, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54070:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11492, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54090:2:4", + "nodeType": "VariableDeclaration", + "scope": 11509, + "src": "54082:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11491, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54082:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11494, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54108:2:4", + "nodeType": "VariableDeclaration", + "scope": 11509, + "src": "54094:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11493, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54094:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "54060:51:4" + }, + "returnParameters": { + "id": 11496, + "nodeType": "ParameterList", + "parameters": [], + "src": "54126:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11532, + "nodeType": "FunctionDefinition", + "src": "54241:176:4", + "body": { + "id": 11531, + "nodeType": "Block", + "src": "54310:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c626f6f6c29", + "id": 11523, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54360:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + "value": "log(bool,address,address,bool)" + }, + { + "id": 11524, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11511, + "src": "54394:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11525, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11513, + "src": "54398:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11526, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11515, + "src": "54402:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11527, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11517, + "src": "54406:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11521, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54336:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11522, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54336:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54336:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11520, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "54320:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54320:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11530, + "nodeType": "ExpressionStatement", + "src": "54320:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54250:3:4", + "parameters": { + "id": 11518, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11511, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54259:2:4", + "nodeType": "VariableDeclaration", + "scope": 11532, + "src": "54254:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11510, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54254:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11513, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54271:2:4", + "nodeType": "VariableDeclaration", + "scope": 11532, + "src": "54263:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11512, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54263:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11515, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54283:2:4", + "nodeType": "VariableDeclaration", + "scope": 11532, + "src": "54275:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11514, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54275:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11517, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54292:2:4", + "nodeType": "VariableDeclaration", + "scope": 11532, + "src": "54287:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11516, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54287:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54253:42:4" + }, + "returnParameters": { + "id": 11519, + "nodeType": "ParameterList", + "parameters": [], + "src": "54310:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11555, + "nodeType": "FunctionDefinition", + "src": "54423:182:4", + "body": { + "id": 11554, + "nodeType": "Block", + "src": "54495:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c6164647265737329", + "id": 11546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54545:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + "value": "log(bool,address,address,address)" + }, + { + "id": 11547, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11534, + "src": "54582:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11548, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11536, + "src": "54586:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11549, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11538, + "src": "54590:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11550, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11540, + "src": "54594:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11544, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54521:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11545, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54521:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54521:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11543, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "54505:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54505:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11553, + "nodeType": "ExpressionStatement", + "src": "54505:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54432:3:4", + "parameters": { + "id": 11541, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11534, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54441:2:4", + "nodeType": "VariableDeclaration", + "scope": 11555, + "src": "54436:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11533, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54436:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11536, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54453:2:4", + "nodeType": "VariableDeclaration", + "scope": 11555, + "src": "54445:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11535, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54445:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11538, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54465:2:4", + "nodeType": "VariableDeclaration", + "scope": 11555, + "src": "54457:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11537, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54457:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11540, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54477:2:4", + "nodeType": "VariableDeclaration", + "scope": 11555, + "src": "54469:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11539, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54469:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "54435:45:4" + }, + "returnParameters": { + "id": 11542, + "nodeType": "ParameterList", + "parameters": [], + "src": "54495:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11578, + "nodeType": "FunctionDefinition", + "src": "54611:170:4", + "body": { + "id": 11577, + "nodeType": "Block", + "src": "54677:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c75696e742c75696e7429", + "id": 11569, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54727:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3d0e9de46a80fe11d0044e9599dfddd0e8b842cabe189638f7090f19867918c1", + "typeString": "literal_string \"log(address,uint,uint,uint)\"" + }, + "value": "log(address,uint,uint,uint)" + }, + { + "id": 11570, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11557, + "src": "54758:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11571, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11559, + "src": "54762:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11572, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11561, + "src": "54766:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11573, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11563, + "src": "54770:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3d0e9de46a80fe11d0044e9599dfddd0e8b842cabe189638f7090f19867918c1", + "typeString": "literal_string \"log(address,uint,uint,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11567, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54703:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54703:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54703:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11566, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "54687:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11575, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54687:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11576, + "nodeType": "ExpressionStatement", + "src": "54687:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54620:3:4", + "parameters": { + "id": 11564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11557, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54632:2:4", + "nodeType": "VariableDeclaration", + "scope": 11578, + "src": "54624:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11556, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54624:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11559, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54641:2:4", + "nodeType": "VariableDeclaration", + "scope": 11578, + "src": "54636:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11558, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54636:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11561, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54650:2:4", + "nodeType": "VariableDeclaration", + "scope": 11578, + "src": "54645:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11560, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54645:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11563, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54659:2:4", + "nodeType": "VariableDeclaration", + "scope": 11578, + "src": "54654:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11562, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54654:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "54623:39:4" + }, + "returnParameters": { + "id": 11565, + "nodeType": "ParameterList", + "parameters": [], + "src": "54677:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11601, + "nodeType": "FunctionDefinition", + "src": "54787:181:4", + "body": { + "id": 11600, + "nodeType": "Block", + "src": "54862:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c75696e742c737472696e6729", + "id": 11592, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54912:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_89340dab4d23e956541beb32775ccfee8376ba263886dd811a646420a3a403a3", + "typeString": "literal_string \"log(address,uint,uint,string)\"" + }, + "value": "log(address,uint,uint,string)" + }, + { + "id": 11593, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11580, + "src": "54945:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11594, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11582, + "src": "54949:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11595, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11584, + "src": "54953:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11596, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11586, + "src": "54957:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_89340dab4d23e956541beb32775ccfee8376ba263886dd811a646420a3a403a3", + "typeString": "literal_string \"log(address,uint,uint,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11590, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54888:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54888:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11597, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54888:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11589, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "54872:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11598, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54872:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11599, + "nodeType": "ExpressionStatement", + "src": "54872:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54796:3:4", + "parameters": { + "id": 11587, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11580, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54808:2:4", + "nodeType": "VariableDeclaration", + "scope": 11601, + "src": "54800:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11579, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54800:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11582, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54817:2:4", + "nodeType": "VariableDeclaration", + "scope": 11601, + "src": "54812:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11581, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54812:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11584, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54826:2:4", + "nodeType": "VariableDeclaration", + "scope": 11601, + "src": "54821:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11583, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54821:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11586, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54844:2:4", + "nodeType": "VariableDeclaration", + "scope": 11601, + "src": "54830:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11585, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54830:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "54799:48:4" + }, + "returnParameters": { + "id": 11588, + "nodeType": "ParameterList", + "parameters": [], + "src": "54862:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11624, + "nodeType": "FunctionDefinition", + "src": "54974:170:4", + "body": { + "id": 11623, + "nodeType": "Block", + "src": "55040:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c75696e742c626f6f6c29", + "id": 11615, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55090:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ec4ba8a24543362f628480c68bc2d6749e97ab33d46530db336a528c77e48393", + "typeString": "literal_string \"log(address,uint,uint,bool)\"" + }, + "value": "log(address,uint,uint,bool)" + }, + { + "id": 11616, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11603, + "src": "55121:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11617, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11605, + "src": "55125:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11618, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11607, + "src": "55129:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11619, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11609, + "src": "55133:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ec4ba8a24543362f628480c68bc2d6749e97ab33d46530db336a528c77e48393", + "typeString": "literal_string \"log(address,uint,uint,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11613, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55066:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55066:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55066:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11612, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55050:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55050:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11622, + "nodeType": "ExpressionStatement", + "src": "55050:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54983:3:4", + "parameters": { + "id": 11610, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11603, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54995:2:4", + "nodeType": "VariableDeclaration", + "scope": 11624, + "src": "54987:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11602, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54987:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11605, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55004:2:4", + "nodeType": "VariableDeclaration", + "scope": 11624, + "src": "54999:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11604, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "54999:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11607, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55013:2:4", + "nodeType": "VariableDeclaration", + "scope": 11624, + "src": "55008:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11606, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55008:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11609, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55022:2:4", + "nodeType": "VariableDeclaration", + "scope": 11624, + "src": "55017:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11608, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55017:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54986:39:4" + }, + "returnParameters": { + "id": 11611, + "nodeType": "ParameterList", + "parameters": [], + "src": "55040:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11647, + "nodeType": "FunctionDefinition", + "src": "55150:176:4", + "body": { + "id": 11646, + "nodeType": "Block", + "src": "55219:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c75696e742c6164647265737329", + "id": 11638, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55269:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1ef634347c2e4a2aa1a4e4e13d33bf0169f02bc4d10ff6168ca604cf3134d957", + "typeString": "literal_string \"log(address,uint,uint,address)\"" + }, + "value": "log(address,uint,uint,address)" + }, + { + "id": 11639, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11626, + "src": "55303:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11640, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11628, + "src": "55307:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11641, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11630, + "src": "55311:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11642, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11632, + "src": "55315:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1ef634347c2e4a2aa1a4e4e13d33bf0169f02bc4d10ff6168ca604cf3134d957", + "typeString": "literal_string \"log(address,uint,uint,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11636, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55245:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11637, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55245:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11643, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55245:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11635, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55229:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55229:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11645, + "nodeType": "ExpressionStatement", + "src": "55229:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55159:3:4", + "parameters": { + "id": 11633, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11626, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55171:2:4", + "nodeType": "VariableDeclaration", + "scope": 11647, + "src": "55163:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11625, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55163:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11628, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55180:2:4", + "nodeType": "VariableDeclaration", + "scope": 11647, + "src": "55175:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11627, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55175:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11630, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55189:2:4", + "nodeType": "VariableDeclaration", + "scope": 11647, + "src": "55184:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11629, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55184:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11632, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55201:2:4", + "nodeType": "VariableDeclaration", + "scope": 11647, + "src": "55193:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11631, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55193:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "55162:42:4" + }, + "returnParameters": { + "id": 11634, + "nodeType": "ParameterList", + "parameters": [], + "src": "55219:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11670, + "nodeType": "FunctionDefinition", + "src": "55332:181:4", + "body": { + "id": 11669, + "nodeType": "Block", + "src": "55407:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c737472696e672c75696e7429", + "id": 11661, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55457:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f512cf9b6f6b16313e82164dab4a017b25c36dde729112fd1b69de438557701b", + "typeString": "literal_string \"log(address,uint,string,uint)\"" + }, + "value": "log(address,uint,string,uint)" + }, + { + "id": 11662, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11649, + "src": "55490:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11663, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11651, + "src": "55494:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11664, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11653, + "src": "55498:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11665, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11655, + "src": "55502:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f512cf9b6f6b16313e82164dab4a017b25c36dde729112fd1b69de438557701b", + "typeString": "literal_string \"log(address,uint,string,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55433:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55433:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11666, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55433:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11658, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55417:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55417:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11668, + "nodeType": "ExpressionStatement", + "src": "55417:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55341:3:4", + "parameters": { + "id": 11656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11649, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55353:2:4", + "nodeType": "VariableDeclaration", + "scope": 11670, + "src": "55345:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11648, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55345:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11651, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55362:2:4", + "nodeType": "VariableDeclaration", + "scope": 11670, + "src": "55357:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11650, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55357:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11653, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55380:2:4", + "nodeType": "VariableDeclaration", + "scope": 11670, + "src": "55366:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11652, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55366:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11655, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55389:2:4", + "nodeType": "VariableDeclaration", + "scope": 11670, + "src": "55384:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11654, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55384:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "55344:48:4" + }, + "returnParameters": { + "id": 11657, + "nodeType": "ParameterList", + "parameters": [], + "src": "55407:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11693, + "nodeType": "FunctionDefinition", + "src": "55519:192:4", + "body": { + "id": 11692, + "nodeType": "Block", + "src": "55603:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c737472696e672c737472696e6729", + "id": 11684, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55653:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7e56c693294848e354fd0e0f30db9c459984681d518306ec606cfd6f328a5ba0", + "typeString": "literal_string \"log(address,uint,string,string)\"" + }, + "value": "log(address,uint,string,string)" + }, + { + "id": 11685, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11672, + "src": "55688:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11686, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11674, + "src": "55692:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11687, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11676, + "src": "55696:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11688, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11678, + "src": "55700:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7e56c693294848e354fd0e0f30db9c459984681d518306ec606cfd6f328a5ba0", + "typeString": "literal_string \"log(address,uint,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11682, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55629:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55629:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11689, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55629:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11681, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55613:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55613:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11691, + "nodeType": "ExpressionStatement", + "src": "55613:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55528:3:4", + "parameters": { + "id": 11679, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11672, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55540:2:4", + "nodeType": "VariableDeclaration", + "scope": 11693, + "src": "55532:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11671, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55532:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11674, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55549:2:4", + "nodeType": "VariableDeclaration", + "scope": 11693, + "src": "55544:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11673, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55544:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11676, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55567:2:4", + "nodeType": "VariableDeclaration", + "scope": 11693, + "src": "55553:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11675, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55553:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11678, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55585:2:4", + "nodeType": "VariableDeclaration", + "scope": 11693, + "src": "55571:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11677, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55571:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "55531:57:4" + }, + "returnParameters": { + "id": 11680, + "nodeType": "ParameterList", + "parameters": [], + "src": "55603:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11716, + "nodeType": "FunctionDefinition", + "src": "55717:181:4", + "body": { + "id": 11715, + "nodeType": "Block", + "src": "55792:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c737472696e672c626f6f6c29", + "id": 11707, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55842:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a4024f1195637e9b9bd0fa746905cf1693b1e0cd3e1c717a1cbc5279763b256a", + "typeString": "literal_string \"log(address,uint,string,bool)\"" + }, + "value": "log(address,uint,string,bool)" + }, + { + "id": 11708, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11695, + "src": "55875:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11709, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11697, + "src": "55879:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11710, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11699, + "src": "55883:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11711, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11701, + "src": "55887:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a4024f1195637e9b9bd0fa746905cf1693b1e0cd3e1c717a1cbc5279763b256a", + "typeString": "literal_string \"log(address,uint,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11705, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55818:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11706, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55818:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55818:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11704, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55802:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55802:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11714, + "nodeType": "ExpressionStatement", + "src": "55802:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55726:3:4", + "parameters": { + "id": 11702, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11695, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55738:2:4", + "nodeType": "VariableDeclaration", + "scope": 11716, + "src": "55730:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11694, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55730:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11697, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55747:2:4", + "nodeType": "VariableDeclaration", + "scope": 11716, + "src": "55742:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11696, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55742:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11699, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55765:2:4", + "nodeType": "VariableDeclaration", + "scope": 11716, + "src": "55751:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11698, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55751:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11701, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55774:2:4", + "nodeType": "VariableDeclaration", + "scope": 11716, + "src": "55769:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11700, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55769:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "55729:48:4" + }, + "returnParameters": { + "id": 11703, + "nodeType": "ParameterList", + "parameters": [], + "src": "55792:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11739, + "nodeType": "FunctionDefinition", + "src": "55904:187:4", + "body": { + "id": 11738, + "nodeType": "Block", + "src": "55982:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c737472696e672c6164647265737329", + "id": 11730, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56032:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc792604099307de53721f0c554f3059214ac3d8d1f6cd01cd16cf188835e809", + "typeString": "literal_string \"log(address,uint,string,address)\"" + }, + "value": "log(address,uint,string,address)" + }, + { + "id": 11731, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11718, + "src": "56068:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11732, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11720, + "src": "56072:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11733, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11722, + "src": "56076:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11734, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11724, + "src": "56080:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dc792604099307de53721f0c554f3059214ac3d8d1f6cd01cd16cf188835e809", + "typeString": "literal_string \"log(address,uint,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56008:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56008:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56008:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11727, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "55992:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55992:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11737, + "nodeType": "ExpressionStatement", + "src": "55992:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55913:3:4", + "parameters": { + "id": 11725, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11718, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55925:2:4", + "nodeType": "VariableDeclaration", + "scope": 11739, + "src": "55917:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11717, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55917:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11720, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55934:2:4", + "nodeType": "VariableDeclaration", + "scope": 11739, + "src": "55929:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11719, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "55929:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11722, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55952:2:4", + "nodeType": "VariableDeclaration", + "scope": 11739, + "src": "55938:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11721, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55938:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11724, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55964:2:4", + "nodeType": "VariableDeclaration", + "scope": 11739, + "src": "55956:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11723, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55956:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "55916:51:4" + }, + "returnParameters": { + "id": 11726, + "nodeType": "ParameterList", + "parameters": [], + "src": "55982:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11762, + "nodeType": "FunctionDefinition", + "src": "56097:170:4", + "body": { + "id": 11761, + "nodeType": "Block", + "src": "56163:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c626f6f6c2c75696e7429", + "id": 11753, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56213:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_698f43923a9354f67c861ae1c111970990b11c7f948743e5f44d6ea901e7f1a2", + "typeString": "literal_string \"log(address,uint,bool,uint)\"" + }, + "value": "log(address,uint,bool,uint)" + }, + { + "id": 11754, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11741, + "src": "56244:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11755, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11743, + "src": "56248:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11756, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11745, + "src": "56252:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11757, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11747, + "src": "56256:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_698f43923a9354f67c861ae1c111970990b11c7f948743e5f44d6ea901e7f1a2", + "typeString": "literal_string \"log(address,uint,bool,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11751, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56189:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11752, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56189:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11758, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56189:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11750, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "56173:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56173:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11760, + "nodeType": "ExpressionStatement", + "src": "56173:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56106:3:4", + "parameters": { + "id": 11748, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11741, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56118:2:4", + "nodeType": "VariableDeclaration", + "scope": 11762, + "src": "56110:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11740, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56110:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11743, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56127:2:4", + "nodeType": "VariableDeclaration", + "scope": 11762, + "src": "56122:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11742, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56122:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11745, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56136:2:4", + "nodeType": "VariableDeclaration", + "scope": 11762, + "src": "56131:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11744, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56131:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11747, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56145:2:4", + "nodeType": "VariableDeclaration", + "scope": 11762, + "src": "56140:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11746, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56140:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "56109:39:4" + }, + "returnParameters": { + "id": 11749, + "nodeType": "ParameterList", + "parameters": [], + "src": "56163:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11785, + "nodeType": "FunctionDefinition", + "src": "56273:181:4", + "body": { + "id": 11784, + "nodeType": "Block", + "src": "56348:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c626f6f6c2c737472696e6729", + "id": 11776, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56398:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e8e4e75a8ccb3f0e11ad74335eebf7a17a78463e99c3b077ff34193a8918f3f", + "typeString": "literal_string \"log(address,uint,bool,string)\"" + }, + "value": "log(address,uint,bool,string)" + }, + { + "id": 11777, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11764, + "src": "56431:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11778, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11766, + "src": "56435:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11779, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11768, + "src": "56439:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11780, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11770, + "src": "56443:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e8e4e75a8ccb3f0e11ad74335eebf7a17a78463e99c3b077ff34193a8918f3f", + "typeString": "literal_string \"log(address,uint,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11774, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56374:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56374:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56374:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11773, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "56358:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56358:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11783, + "nodeType": "ExpressionStatement", + "src": "56358:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56282:3:4", + "parameters": { + "id": 11771, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11764, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56294:2:4", + "nodeType": "VariableDeclaration", + "scope": 11785, + "src": "56286:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11763, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56286:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11766, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56303:2:4", + "nodeType": "VariableDeclaration", + "scope": 11785, + "src": "56298:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11765, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56298:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11768, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56312:2:4", + "nodeType": "VariableDeclaration", + "scope": 11785, + "src": "56307:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11767, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56307:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11770, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56330:2:4", + "nodeType": "VariableDeclaration", + "scope": 11785, + "src": "56316:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11769, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "56316:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "56285:48:4" + }, + "returnParameters": { + "id": 11772, + "nodeType": "ParameterList", + "parameters": [], + "src": "56348:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11808, + "nodeType": "FunctionDefinition", + "src": "56460:170:4", + "body": { + "id": 11807, + "nodeType": "Block", + "src": "56526:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c626f6f6c2c626f6f6c29", + "id": 11799, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56576:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fea1d55aec42c422504acea77de45574d2fa3abd9dc9c6288741e19c3bd9849b", + "typeString": "literal_string \"log(address,uint,bool,bool)\"" + }, + "value": "log(address,uint,bool,bool)" + }, + { + "id": 11800, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11787, + "src": "56607:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11801, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11789, + "src": "56611:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11802, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11791, + "src": "56615:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11803, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11793, + "src": "56619:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fea1d55aec42c422504acea77de45574d2fa3abd9dc9c6288741e19c3bd9849b", + "typeString": "literal_string \"log(address,uint,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11797, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56552:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56552:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11804, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56552:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11796, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "56536:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11805, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56536:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11806, + "nodeType": "ExpressionStatement", + "src": "56536:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56469:3:4", + "parameters": { + "id": 11794, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11787, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56481:2:4", + "nodeType": "VariableDeclaration", + "scope": 11808, + "src": "56473:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11786, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56473:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11789, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56490:2:4", + "nodeType": "VariableDeclaration", + "scope": 11808, + "src": "56485:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11788, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56485:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11791, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56499:2:4", + "nodeType": "VariableDeclaration", + "scope": 11808, + "src": "56494:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11790, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56494:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11793, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56508:2:4", + "nodeType": "VariableDeclaration", + "scope": 11808, + "src": "56503:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11792, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56503:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "56472:39:4" + }, + "returnParameters": { + "id": 11795, + "nodeType": "ParameterList", + "parameters": [], + "src": "56526:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11831, + "nodeType": "FunctionDefinition", + "src": "56636:176:4", + "body": { + "id": 11830, + "nodeType": "Block", + "src": "56705:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c626f6f6c2c6164647265737329", + "id": 11822, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56755:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_23e5497254e625e6c33a3fa3eb47ff18f6bac3345da52f847bd5571820febf2d", + "typeString": "literal_string \"log(address,uint,bool,address)\"" + }, + "value": "log(address,uint,bool,address)" + }, + { + "id": 11823, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11810, + "src": "56789:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11824, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11812, + "src": "56793:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11825, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11814, + "src": "56797:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 11826, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11816, + "src": "56801:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_23e5497254e625e6c33a3fa3eb47ff18f6bac3345da52f847bd5571820febf2d", + "typeString": "literal_string \"log(address,uint,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11820, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56731:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11821, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56731:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56731:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11819, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "56715:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11828, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56715:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11829, + "nodeType": "ExpressionStatement", + "src": "56715:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56645:3:4", + "parameters": { + "id": 11817, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11810, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56657:2:4", + "nodeType": "VariableDeclaration", + "scope": 11831, + "src": "56649:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11809, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56649:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11812, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56666:2:4", + "nodeType": "VariableDeclaration", + "scope": 11831, + "src": "56661:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11811, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56661:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11814, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56675:2:4", + "nodeType": "VariableDeclaration", + "scope": 11831, + "src": "56670:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11813, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56670:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11816, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56687:2:4", + "nodeType": "VariableDeclaration", + "scope": 11831, + "src": "56679:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11815, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56679:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "56648:42:4" + }, + "returnParameters": { + "id": 11818, + "nodeType": "ParameterList", + "parameters": [], + "src": "56705:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11854, + "nodeType": "FunctionDefinition", + "src": "56818:176:4", + "body": { + "id": 11853, + "nodeType": "Block", + "src": "56887:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c616464726573732c75696e7429", + "id": 11845, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56937:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5d98768f8145ad77f2cf1b1f44790c3edb28c68feadee43b01883b75311ac0e", + "typeString": "literal_string \"log(address,uint,address,uint)\"" + }, + "value": "log(address,uint,address,uint)" + }, + { + "id": 11846, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11833, + "src": "56971:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11847, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11835, + "src": "56975:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11848, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11837, + "src": "56979:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11849, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11839, + "src": "56983:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5d98768f8145ad77f2cf1b1f44790c3edb28c68feadee43b01883b75311ac0e", + "typeString": "literal_string \"log(address,uint,address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11843, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56913:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11844, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56913:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56913:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11842, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "56897:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56897:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11852, + "nodeType": "ExpressionStatement", + "src": "56897:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56827:3:4", + "parameters": { + "id": 11840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11833, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56839:2:4", + "nodeType": "VariableDeclaration", + "scope": 11854, + "src": "56831:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11832, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56831:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11835, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56848:2:4", + "nodeType": "VariableDeclaration", + "scope": 11854, + "src": "56843:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11834, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56843:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11837, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56860:2:4", + "nodeType": "VariableDeclaration", + "scope": 11854, + "src": "56852:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11836, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56852:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11839, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56869:2:4", + "nodeType": "VariableDeclaration", + "scope": 11854, + "src": "56864:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11838, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "56864:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "56830:42:4" + }, + "returnParameters": { + "id": 11841, + "nodeType": "ParameterList", + "parameters": [], + "src": "56887:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11877, + "nodeType": "FunctionDefinition", + "src": "57000:187:4", + "body": { + "id": 11876, + "nodeType": "Block", + "src": "57078:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c616464726573732c737472696e6729", + "id": 11868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57128:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d71f39ef468709ab1c82c125aa1311ff96f65f56794c27c7babe5651379e4b4", + "typeString": "literal_string \"log(address,uint,address,string)\"" + }, + "value": "log(address,uint,address,string)" + }, + { + "id": 11869, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11856, + "src": "57164:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11870, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11858, + "src": "57168:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11871, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11860, + "src": "57172:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11872, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11862, + "src": "57176:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d71f39ef468709ab1c82c125aa1311ff96f65f56794c27c7babe5651379e4b4", + "typeString": "literal_string \"log(address,uint,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11866, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57104:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11867, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57104:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11873, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57104:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11865, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "57088:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57088:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11875, + "nodeType": "ExpressionStatement", + "src": "57088:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57009:3:4", + "parameters": { + "id": 11863, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11856, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57021:2:4", + "nodeType": "VariableDeclaration", + "scope": 11877, + "src": "57013:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11855, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57013:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11858, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57030:2:4", + "nodeType": "VariableDeclaration", + "scope": 11877, + "src": "57025:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11857, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57025:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11860, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57042:2:4", + "nodeType": "VariableDeclaration", + "scope": 11877, + "src": "57034:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11859, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57034:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11862, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57060:2:4", + "nodeType": "VariableDeclaration", + "scope": 11877, + "src": "57046:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11861, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57046:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "57012:51:4" + }, + "returnParameters": { + "id": 11864, + "nodeType": "ParameterList", + "parameters": [], + "src": "57078:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11900, + "nodeType": "FunctionDefinition", + "src": "57193:176:4", + "body": { + "id": 11899, + "nodeType": "Block", + "src": "57262:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c616464726573732c626f6f6c29", + "id": 11891, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57312:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f181a1e98aefbb6e5d63ca72f24da9aa3686f47d72314c12e70fa7843b309ee6", + "typeString": "literal_string \"log(address,uint,address,bool)\"" + }, + "value": "log(address,uint,address,bool)" + }, + { + "id": 11892, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11879, + "src": "57346:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11893, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11881, + "src": "57350:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11894, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11883, + "src": "57354:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11895, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11885, + "src": "57358:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f181a1e98aefbb6e5d63ca72f24da9aa3686f47d72314c12e70fa7843b309ee6", + "typeString": "literal_string \"log(address,uint,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11889, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57288:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11890, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57288:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57288:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11888, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "57272:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11897, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57272:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11898, + "nodeType": "ExpressionStatement", + "src": "57272:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57202:3:4", + "parameters": { + "id": 11886, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11879, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57214:2:4", + "nodeType": "VariableDeclaration", + "scope": 11900, + "src": "57206:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11878, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57206:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11881, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57223:2:4", + "nodeType": "VariableDeclaration", + "scope": 11900, + "src": "57218:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11880, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57218:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11883, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57235:2:4", + "nodeType": "VariableDeclaration", + "scope": 11900, + "src": "57227:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11882, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57227:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11885, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57244:2:4", + "nodeType": "VariableDeclaration", + "scope": 11900, + "src": "57239:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11884, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "57239:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57205:42:4" + }, + "returnParameters": { + "id": 11887, + "nodeType": "ParameterList", + "parameters": [], + "src": "57262:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11923, + "nodeType": "FunctionDefinition", + "src": "57375:182:4", + "body": { + "id": 11922, + "nodeType": "Block", + "src": "57447:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e742c616464726573732c6164647265737329", + "id": 11914, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57497:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ec24846f1ed52bfa5dc64139c1bf8b03f991fdd5156eccb50dfe44ca5a2ca40e", + "typeString": "literal_string \"log(address,uint,address,address)\"" + }, + "value": "log(address,uint,address,address)" + }, + { + "id": 11915, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11902, + "src": "57534:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11916, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11904, + "src": "57538:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11917, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11906, + "src": "57542:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11918, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11908, + "src": "57546:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ec24846f1ed52bfa5dc64139c1bf8b03f991fdd5156eccb50dfe44ca5a2ca40e", + "typeString": "literal_string \"log(address,uint,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 11912, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57473:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57473:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57473:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11911, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "57457:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57457:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11921, + "nodeType": "ExpressionStatement", + "src": "57457:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57384:3:4", + "parameters": { + "id": 11909, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11902, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57396:2:4", + "nodeType": "VariableDeclaration", + "scope": 11923, + "src": "57388:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57388:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11904, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57405:2:4", + "nodeType": "VariableDeclaration", + "scope": 11923, + "src": "57400:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11903, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57400:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11906, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57417:2:4", + "nodeType": "VariableDeclaration", + "scope": 11923, + "src": "57409:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11905, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57409:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11908, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57429:2:4", + "nodeType": "VariableDeclaration", + "scope": 11923, + "src": "57421:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11907, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57421:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "57387:45:4" + }, + "returnParameters": { + "id": 11910, + "nodeType": "ParameterList", + "parameters": [], + "src": "57447:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11946, + "nodeType": "FunctionDefinition", + "src": "57563:181:4", + "body": { + "id": 11945, + "nodeType": "Block", + "src": "57638:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e742c75696e7429", + "id": 11937, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57688:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a4c92a60ad8c7136a44d442238a838fba251b421248205a77f1a522d55c988af", + "typeString": "literal_string \"log(address,string,uint,uint)\"" + }, + "value": "log(address,string,uint,uint)" + }, + { + "id": 11938, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11925, + "src": "57721:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11939, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11927, + "src": "57725:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11940, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11929, + "src": "57729:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11941, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11931, + "src": "57733:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a4c92a60ad8c7136a44d442238a838fba251b421248205a77f1a522d55c988af", + "typeString": "literal_string \"log(address,string,uint,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 11935, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57664:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11936, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57664:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57664:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11934, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "57648:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11943, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57648:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11944, + "nodeType": "ExpressionStatement", + "src": "57648:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57572:3:4", + "parameters": { + "id": 11932, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11925, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57584:2:4", + "nodeType": "VariableDeclaration", + "scope": 11946, + "src": "57576:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57576:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11927, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57602:2:4", + "nodeType": "VariableDeclaration", + "scope": 11946, + "src": "57588:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11926, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57588:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11929, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57611:2:4", + "nodeType": "VariableDeclaration", + "scope": 11946, + "src": "57606:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11928, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57606:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11931, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57620:2:4", + "nodeType": "VariableDeclaration", + "scope": 11946, + "src": "57615:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11930, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57615:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "57575:48:4" + }, + "returnParameters": { + "id": 11933, + "nodeType": "ParameterList", + "parameters": [], + "src": "57638:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11969, + "nodeType": "FunctionDefinition", + "src": "57750:192:4", + "body": { + "id": 11968, + "nodeType": "Block", + "src": "57834:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e742c737472696e6729", + "id": 11960, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57884:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d1365c94e45374e792b786edc547d0277c401db24a4303b5dd1e8a93df0829e", + "typeString": "literal_string \"log(address,string,uint,string)\"" + }, + "value": "log(address,string,uint,string)" + }, + { + "id": 11961, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11948, + "src": "57919:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11962, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11950, + "src": "57923:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11963, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11952, + "src": "57927:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11964, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11954, + "src": "57931:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d1365c94e45374e792b786edc547d0277c401db24a4303b5dd1e8a93df0829e", + "typeString": "literal_string \"log(address,string,uint,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 11958, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57860:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11959, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57860:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57860:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11957, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "57844:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11966, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57844:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11967, + "nodeType": "ExpressionStatement", + "src": "57844:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57759:3:4", + "parameters": { + "id": 11955, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11948, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57771:2:4", + "nodeType": "VariableDeclaration", + "scope": 11969, + "src": "57763:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57763:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11950, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57789:2:4", + "nodeType": "VariableDeclaration", + "scope": 11969, + "src": "57775:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11949, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57775:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11952, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57798:2:4", + "nodeType": "VariableDeclaration", + "scope": 11969, + "src": "57793:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11951, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57793:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11954, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57816:2:4", + "nodeType": "VariableDeclaration", + "scope": 11969, + "src": "57802:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11953, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57802:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "57762:57:4" + }, + "returnParameters": { + "id": 11956, + "nodeType": "ParameterList", + "parameters": [], + "src": "57834:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 11992, + "nodeType": "FunctionDefinition", + "src": "57948:181:4", + "body": { + "id": 11991, + "nodeType": "Block", + "src": "58023:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e742c626f6f6c29", + "id": 11983, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58073:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7e250d5bf3975165268961c2b6dbe143f053bed03d903630f547f1fbab28b895", + "typeString": "literal_string \"log(address,string,uint,bool)\"" + }, + "value": "log(address,string,uint,bool)" + }, + { + "id": 11984, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11971, + "src": "58106:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 11985, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11973, + "src": "58110:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 11986, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11975, + "src": "58114:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 11987, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11977, + "src": "58118:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7e250d5bf3975165268961c2b6dbe143f053bed03d903630f547f1fbab28b895", + "typeString": "literal_string \"log(address,string,uint,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 11981, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58049:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 11982, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58049:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 11988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58049:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 11980, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "58033:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 11989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58033:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 11990, + "nodeType": "ExpressionStatement", + "src": "58033:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57957:3:4", + "parameters": { + "id": 11978, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11971, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57969:2:4", + "nodeType": "VariableDeclaration", + "scope": 11992, + "src": "57961:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11970, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57961:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11973, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57987:2:4", + "nodeType": "VariableDeclaration", + "scope": 11992, + "src": "57973:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11972, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57973:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11975, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57996:2:4", + "nodeType": "VariableDeclaration", + "scope": 11992, + "src": "57991:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11974, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "57991:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11977, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58005:2:4", + "nodeType": "VariableDeclaration", + "scope": 11992, + "src": "58000:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 11976, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58000:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57960:48:4" + }, + "returnParameters": { + "id": 11979, + "nodeType": "ParameterList", + "parameters": [], + "src": "58023:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12015, + "nodeType": "FunctionDefinition", + "src": "58135:187:4", + "body": { + "id": 12014, + "nodeType": "Block", + "src": "58213:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e742c6164647265737329", + "id": 12006, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58263:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dfd7d80b4150ea6b0b2772758d6e66d8c7f141bfd7de11119a8fee2a703664e4", + "typeString": "literal_string \"log(address,string,uint,address)\"" + }, + "value": "log(address,string,uint,address)" + }, + { + "id": 12007, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11994, + "src": "58299:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12008, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11996, + "src": "58303:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12009, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 11998, + "src": "58307:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12010, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12000, + "src": "58311:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dfd7d80b4150ea6b0b2772758d6e66d8c7f141bfd7de11119a8fee2a703664e4", + "typeString": "literal_string \"log(address,string,uint,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12004, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58239:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12005, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58239:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58239:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12003, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "58223:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58223:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12013, + "nodeType": "ExpressionStatement", + "src": "58223:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58144:3:4", + "parameters": { + "id": 12001, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11994, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58156:2:4", + "nodeType": "VariableDeclaration", + "scope": 12015, + "src": "58148:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58148:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11996, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58174:2:4", + "nodeType": "VariableDeclaration", + "scope": 12015, + "src": "58160:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 11995, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58160:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11998, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58183:2:4", + "nodeType": "VariableDeclaration", + "scope": 12015, + "src": "58178:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 11997, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "58178:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12000, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58195:2:4", + "nodeType": "VariableDeclaration", + "scope": 12015, + "src": "58187:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 11999, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58187:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58147:51:4" + }, + "returnParameters": { + "id": 12002, + "nodeType": "ParameterList", + "parameters": [], + "src": "58213:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12038, + "nodeType": "FunctionDefinition", + "src": "58328:192:4", + "body": { + "id": 12037, + "nodeType": "Block", + "src": "58412:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c75696e7429", + "id": 12029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58462:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a14fd039ae37435afa9d1674d6d48b37ffbd5da4cd9166a3f673f5f0db01a4c5", + "typeString": "literal_string \"log(address,string,string,uint)\"" + }, + "value": "log(address,string,string,uint)" + }, + { + "id": 12030, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12017, + "src": "58497:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12031, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12019, + "src": "58501:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12032, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12021, + "src": "58505:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12033, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12023, + "src": "58509:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a14fd039ae37435afa9d1674d6d48b37ffbd5da4cd9166a3f673f5f0db01a4c5", + "typeString": "literal_string \"log(address,string,string,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12027, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58438:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12028, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58438:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12034, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58438:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12026, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "58422:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58422:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12036, + "nodeType": "ExpressionStatement", + "src": "58422:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58337:3:4", + "parameters": { + "id": 12024, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12017, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58349:2:4", + "nodeType": "VariableDeclaration", + "scope": 12038, + "src": "58341:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12016, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58341:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12019, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58367:2:4", + "nodeType": "VariableDeclaration", + "scope": 12038, + "src": "58353:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12018, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58353:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12021, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58385:2:4", + "nodeType": "VariableDeclaration", + "scope": 12038, + "src": "58371:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12020, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58371:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12023, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58394:2:4", + "nodeType": "VariableDeclaration", + "scope": 12038, + "src": "58389:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12022, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "58389:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "58340:57:4" + }, + "returnParameters": { + "id": 12025, + "nodeType": "ParameterList", + "parameters": [], + "src": "58412:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12061, + "nodeType": "FunctionDefinition", + "src": "58526:203:4", + "body": { + "id": 12060, + "nodeType": "Block", + "src": "58619:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c737472696e6729", + "id": 12052, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58669:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + "value": "log(address,string,string,string)" + }, + { + "id": 12053, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12040, + "src": "58706:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12054, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12042, + "src": "58710:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12055, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12044, + "src": "58714:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12056, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12046, + "src": "58718:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12050, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58645:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12051, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58645:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58645:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12049, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "58629:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58629:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12059, + "nodeType": "ExpressionStatement", + "src": "58629:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58535:3:4", + "parameters": { + "id": 12047, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12040, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58547:2:4", + "nodeType": "VariableDeclaration", + "scope": 12061, + "src": "58539:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12039, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58539:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12042, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58565:2:4", + "nodeType": "VariableDeclaration", + "scope": 12061, + "src": "58551:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12041, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58551:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12044, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58583:2:4", + "nodeType": "VariableDeclaration", + "scope": 12061, + "src": "58569:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12043, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58569:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12046, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58601:2:4", + "nodeType": "VariableDeclaration", + "scope": 12061, + "src": "58587:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12045, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58587:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "58538:66:4" + }, + "returnParameters": { + "id": 12048, + "nodeType": "ParameterList", + "parameters": [], + "src": "58619:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12084, + "nodeType": "FunctionDefinition", + "src": "58735:192:4", + "body": { + "id": 12083, + "nodeType": "Block", + "src": "58819:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c626f6f6c29", + "id": 12075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58869:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + "value": "log(address,string,string,bool)" + }, + { + "id": 12076, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12063, + "src": "58904:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12077, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12065, + "src": "58908:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12078, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12067, + "src": "58912:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12079, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12069, + "src": "58916:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + { + "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" + } + ], + "expression": { + "id": 12073, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58845:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58845:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58845:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12072, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "58829:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58829:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12082, + "nodeType": "ExpressionStatement", + "src": "58829:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58744:3:4", + "parameters": { + "id": 12070, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12063, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58756:2:4", + "nodeType": "VariableDeclaration", + "scope": 12084, + "src": "58748:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12062, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58748:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12065, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58774:2:4", + "nodeType": "VariableDeclaration", + "scope": 12084, + "src": "58760:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12064, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58760:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12067, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58792:2:4", + "nodeType": "VariableDeclaration", + "scope": 12084, + "src": "58778:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12066, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58778:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12069, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58801:2:4", + "nodeType": "VariableDeclaration", + "scope": 12084, + "src": "58796:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12068, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58796:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "58747:57:4" + }, + "returnParameters": { + "id": 12071, + "nodeType": "ParameterList", + "parameters": [], + "src": "58819:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12107, + "nodeType": "FunctionDefinition", + "src": "58933:198:4", + "body": { + "id": 12106, + "nodeType": "Block", + "src": "59020:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c6164647265737329", + "id": 12098, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59070:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + "value": "log(address,string,string,address)" + }, + { + "id": 12099, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12086, + "src": "59108:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12100, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12088, + "src": "59112:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12101, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12090, + "src": "59116:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12102, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12092, + "src": "59120:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12096, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59046:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12097, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59046:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59046:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12095, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59030:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59030:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12105, + "nodeType": "ExpressionStatement", + "src": "59030:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58942:3:4", + "parameters": { + "id": 12093, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12086, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58954:2:4", + "nodeType": "VariableDeclaration", + "scope": 12107, + "src": "58946:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12085, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58946:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12088, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58972:2:4", + "nodeType": "VariableDeclaration", + "scope": 12107, + "src": "58958:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12087, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58958:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12090, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58990:2:4", + "nodeType": "VariableDeclaration", + "scope": 12107, + "src": "58976:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12089, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58976:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12092, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59002:2:4", + "nodeType": "VariableDeclaration", + "scope": 12107, + "src": "58994:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12091, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58994:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58945:60:4" + }, + "returnParameters": { + "id": 12094, + "nodeType": "ParameterList", + "parameters": [], + "src": "59020:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12130, + "nodeType": "FunctionDefinition", + "src": "59137:181:4", + "body": { + "id": 12129, + "nodeType": "Block", + "src": "59212:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c75696e7429", + "id": 12121, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59262:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e720521cc58e36659b0c45689a38054bd7300ff30d5ec0cfec7bae3dc2e9689a", + "typeString": "literal_string \"log(address,string,bool,uint)\"" + }, + "value": "log(address,string,bool,uint)" + }, + { + "id": 12122, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12109, + "src": "59295:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12123, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12111, + "src": "59299:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12124, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12113, + "src": "59303:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12125, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12115, + "src": "59307:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e720521cc58e36659b0c45689a38054bd7300ff30d5ec0cfec7bae3dc2e9689a", + "typeString": "literal_string \"log(address,string,bool,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12119, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59238:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59238:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59238:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12118, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59222:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59222:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12128, + "nodeType": "ExpressionStatement", + "src": "59222:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59146:3:4", + "parameters": { + "id": 12116, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12109, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59158:2:4", + "nodeType": "VariableDeclaration", + "scope": 12130, + "src": "59150:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59150:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12111, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59176:2:4", + "nodeType": "VariableDeclaration", + "scope": 12130, + "src": "59162:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12110, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59162:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12113, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59185:2:4", + "nodeType": "VariableDeclaration", + "scope": 12130, + "src": "59180:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12112, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59180:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12115, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59194:2:4", + "nodeType": "VariableDeclaration", + "scope": 12130, + "src": "59189:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12114, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "59189:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "59149:48:4" + }, + "returnParameters": { + "id": 12117, + "nodeType": "ParameterList", + "parameters": [], + "src": "59212:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12153, + "nodeType": "FunctionDefinition", + "src": "59324:192:4", + "body": { + "id": 12152, + "nodeType": "Block", + "src": "59408:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c737472696e6729", + "id": 12144, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59458:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + "value": "log(address,string,bool,string)" + }, + { + "id": 12145, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12132, + "src": "59493:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12146, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12134, + "src": "59497:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12147, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12136, + "src": "59501:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12148, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12138, + "src": "59505:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12142, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59434:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59434:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12149, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59434:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12141, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59418:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12150, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59418:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12151, + "nodeType": "ExpressionStatement", + "src": "59418:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59333:3:4", + "parameters": { + "id": 12139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12132, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59345:2:4", + "nodeType": "VariableDeclaration", + "scope": 12153, + "src": "59337:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12131, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59337:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12134, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59363:2:4", + "nodeType": "VariableDeclaration", + "scope": 12153, + "src": "59349:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12133, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59349:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12136, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59372:2:4", + "nodeType": "VariableDeclaration", + "scope": 12153, + "src": "59367:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12135, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59367:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12138, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59390:2:4", + "nodeType": "VariableDeclaration", + "scope": 12153, + "src": "59376:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12137, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59376:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "59336:57:4" + }, + "returnParameters": { + "id": 12140, + "nodeType": "ParameterList", + "parameters": [], + "src": "59408:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12176, + "nodeType": "FunctionDefinition", + "src": "59522:181:4", + "body": { + "id": 12175, + "nodeType": "Block", + "src": "59597:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c626f6f6c29", + "id": 12167, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59647:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + "value": "log(address,string,bool,bool)" + }, + { + "id": 12168, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12155, + "src": "59680:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12169, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12157, + "src": "59684:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12170, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12159, + "src": "59688:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12171, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12161, + "src": "59692:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12165, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59623:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59623:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59623:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12164, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59607:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59607:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12174, + "nodeType": "ExpressionStatement", + "src": "59607:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59531:3:4", + "parameters": { + "id": 12162, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12155, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59543:2:4", + "nodeType": "VariableDeclaration", + "scope": 12176, + "src": "59535:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12154, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59535:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12157, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59561:2:4", + "nodeType": "VariableDeclaration", + "scope": 12176, + "src": "59547:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12156, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59547:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12159, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59570:2:4", + "nodeType": "VariableDeclaration", + "scope": 12176, + "src": "59565:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12158, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59565:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12161, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59579:2:4", + "nodeType": "VariableDeclaration", + "scope": 12176, + "src": "59574:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12160, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59574:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "59534:48:4" + }, + "returnParameters": { + "id": 12163, + "nodeType": "ParameterList", + "parameters": [], + "src": "59597:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12199, + "nodeType": "FunctionDefinition", + "src": "59709:187:4", + "body": { + "id": 12198, + "nodeType": "Block", + "src": "59787:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c6164647265737329", + "id": 12190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59837:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + "value": "log(address,string,bool,address)" + }, + { + "id": 12191, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12178, + "src": "59873:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12192, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12180, + "src": "59877:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12193, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12182, + "src": "59881:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12194, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12184, + "src": "59885:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12188, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59813:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59813:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59813:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12187, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59797:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12196, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59797:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12197, + "nodeType": "ExpressionStatement", + "src": "59797:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59718:3:4", + "parameters": { + "id": 12185, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12178, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59730:2:4", + "nodeType": "VariableDeclaration", + "scope": 12199, + "src": "59722:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12177, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59722:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12180, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59748:2:4", + "nodeType": "VariableDeclaration", + "scope": 12199, + "src": "59734:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12179, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59734:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12182, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59757:2:4", + "nodeType": "VariableDeclaration", + "scope": 12199, + "src": "59752:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12181, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59752:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12184, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59769:2:4", + "nodeType": "VariableDeclaration", + "scope": 12199, + "src": "59761:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12183, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59761:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "59721:51:4" + }, + "returnParameters": { + "id": 12186, + "nodeType": "ParameterList", + "parameters": [], + "src": "59787:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12222, + "nodeType": "FunctionDefinition", + "src": "59902:187:4", + "body": { + "id": 12221, + "nodeType": "Block", + "src": "59980:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c75696e7429", + "id": 12213, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60030:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c1933a9a9c61e3dc8d3ebdfa929712b21dab3dcf7188e7d35cbf8aaaf476582", + "typeString": "literal_string \"log(address,string,address,uint)\"" + }, + "value": "log(address,string,address,uint)" + }, + { + "id": 12214, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12201, + "src": "60066:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12215, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12203, + "src": "60070:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12216, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12205, + "src": "60074:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12217, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12207, + "src": "60078:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c1933a9a9c61e3dc8d3ebdfa929712b21dab3dcf7188e7d35cbf8aaaf476582", + "typeString": "literal_string \"log(address,string,address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12211, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60006:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12212, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60006:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12218, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60006:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12210, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "59990:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59990:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12220, + "nodeType": "ExpressionStatement", + "src": "59990:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59911:3:4", + "parameters": { + "id": 12208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12201, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59923:2:4", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "59915:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12200, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59915:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12203, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59941:2:4", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "59927:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12202, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59927:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12205, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59953:2:4", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "59945:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12204, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59945:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12207, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59962:2:4", + "nodeType": "VariableDeclaration", + "scope": 12222, + "src": "59957:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12206, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "59957:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "59914:51:4" + }, + "returnParameters": { + "id": 12209, + "nodeType": "ParameterList", + "parameters": [], + "src": "59980:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12245, + "nodeType": "FunctionDefinition", + "src": "60095:198:4", + "body": { + "id": 12244, + "nodeType": "Block", + "src": "60182:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c737472696e6729", + "id": 12236, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60232:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + "value": "log(address,string,address,string)" + }, + { + "id": 12237, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12224, + "src": "60270:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12238, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12226, + "src": "60274:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12239, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12228, + "src": "60278:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12240, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12230, + "src": "60282:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12234, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60208:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60208:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60208:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12233, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "60192:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60192:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12243, + "nodeType": "ExpressionStatement", + "src": "60192:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60104:3:4", + "parameters": { + "id": 12231, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12224, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60116:2:4", + "nodeType": "VariableDeclaration", + "scope": 12245, + "src": "60108:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12223, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60108:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12226, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60134:2:4", + "nodeType": "VariableDeclaration", + "scope": 12245, + "src": "60120:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12225, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60120:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12228, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60146:2:4", + "nodeType": "VariableDeclaration", + "scope": 12245, + "src": "60138:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12227, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60138:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12230, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60164:2:4", + "nodeType": "VariableDeclaration", + "scope": 12245, + "src": "60150:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12229, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60150:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "60107:60:4" + }, + "returnParameters": { + "id": 12232, + "nodeType": "ParameterList", + "parameters": [], + "src": "60182:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12268, + "nodeType": "FunctionDefinition", + "src": "60299:187:4", + "body": { + "id": 12267, + "nodeType": "Block", + "src": "60377:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c626f6f6c29", + "id": 12259, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60427:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + "value": "log(address,string,address,bool)" + }, + { + "id": 12260, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12247, + "src": "60463:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12261, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12249, + "src": "60467:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12262, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12251, + "src": "60471:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12263, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12253, + "src": "60475:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12257, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60403:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60403:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60403:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12256, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "60387:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12265, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60387:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12266, + "nodeType": "ExpressionStatement", + "src": "60387:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60308:3:4", + "parameters": { + "id": 12254, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12247, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60320:2:4", + "nodeType": "VariableDeclaration", + "scope": 12268, + "src": "60312:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60312:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12249, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60338:2:4", + "nodeType": "VariableDeclaration", + "scope": 12268, + "src": "60324:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12248, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60324:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12251, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60350:2:4", + "nodeType": "VariableDeclaration", + "scope": 12268, + "src": "60342:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12250, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60342:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12253, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60359:2:4", + "nodeType": "VariableDeclaration", + "scope": 12268, + "src": "60354:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12252, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60354:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "60311:51:4" + }, + "returnParameters": { + "id": 12255, + "nodeType": "ParameterList", + "parameters": [], + "src": "60377:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12291, + "nodeType": "FunctionDefinition", + "src": "60492:193:4", + "body": { + "id": 12290, + "nodeType": "Block", + "src": "60573:112:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c6164647265737329", + "id": 12282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60623:37:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + "value": "log(address,string,address,address)" + }, + { + "id": 12283, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12270, + "src": "60662:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12284, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12272, + "src": "60666:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12285, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12274, + "src": "60670:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12286, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12276, + "src": "60674:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12280, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60599:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60599:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60599:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12279, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "60583:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60583:95:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12289, + "nodeType": "ExpressionStatement", + "src": "60583:95:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60501:3:4", + "parameters": { + "id": 12277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12270, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60513:2:4", + "nodeType": "VariableDeclaration", + "scope": 12291, + "src": "60505:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12269, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60505:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12272, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60531:2:4", + "nodeType": "VariableDeclaration", + "scope": 12291, + "src": "60517:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12271, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60517:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12274, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60543:2:4", + "nodeType": "VariableDeclaration", + "scope": 12291, + "src": "60535:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12273, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60535:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12276, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60555:2:4", + "nodeType": "VariableDeclaration", + "scope": 12291, + "src": "60547:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12275, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60547:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "60504:54:4" + }, + "returnParameters": { + "id": 12278, + "nodeType": "ParameterList", + "parameters": [], + "src": "60573:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12314, + "nodeType": "FunctionDefinition", + "src": "60691:170:4", + "body": { + "id": 12313, + "nodeType": "Block", + "src": "60757:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e742c75696e7429", + "id": 12305, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60807:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c210a01e60a7d88137859e75abc2d14430087408747ac6787f0acb2f0f8bfd59", + "typeString": "literal_string \"log(address,bool,uint,uint)\"" + }, + "value": "log(address,bool,uint,uint)" + }, + { + "id": 12306, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12293, + "src": "60838:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12307, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12295, + "src": "60842:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12308, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12297, + "src": "60846:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12309, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12299, + "src": "60850:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c210a01e60a7d88137859e75abc2d14430087408747ac6787f0acb2f0f8bfd59", + "typeString": "literal_string \"log(address,bool,uint,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12303, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60783:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12304, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60783:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60783:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12302, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "60767:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60767:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12312, + "nodeType": "ExpressionStatement", + "src": "60767:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60700:3:4", + "parameters": { + "id": 12300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12293, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60712:2:4", + "nodeType": "VariableDeclaration", + "scope": 12314, + "src": "60704:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12292, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60704:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12295, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60721:2:4", + "nodeType": "VariableDeclaration", + "scope": 12314, + "src": "60716:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12294, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60716:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12297, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60730:2:4", + "nodeType": "VariableDeclaration", + "scope": 12314, + "src": "60725:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12296, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "60725:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12299, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60739:2:4", + "nodeType": "VariableDeclaration", + "scope": 12314, + "src": "60734:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12298, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "60734:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "60703:39:4" + }, + "returnParameters": { + "id": 12301, + "nodeType": "ParameterList", + "parameters": [], + "src": "60757:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12337, + "nodeType": "FunctionDefinition", + "src": "60867:181:4", + "body": { + "id": 12336, + "nodeType": "Block", + "src": "60942:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e742c737472696e6729", + "id": 12328, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60992:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9b588eccef132ec49572951d33e9b0d1b814d54c82133831f78cdc5d923bc6e6", + "typeString": "literal_string \"log(address,bool,uint,string)\"" + }, + "value": "log(address,bool,uint,string)" + }, + { + "id": 12329, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12316, + "src": "61025:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12330, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12318, + "src": "61029:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12331, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12320, + "src": "61033:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12332, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12322, + "src": "61037:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9b588eccef132ec49572951d33e9b0d1b814d54c82133831f78cdc5d923bc6e6", + "typeString": "literal_string \"log(address,bool,uint,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12326, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60968:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12327, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60968:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12333, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60968:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12325, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "60952:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12334, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60952:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12335, + "nodeType": "ExpressionStatement", + "src": "60952:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60876:3:4", + "parameters": { + "id": 12323, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12316, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60888:2:4", + "nodeType": "VariableDeclaration", + "scope": 12337, + "src": "60880:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60880:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12318, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60897:2:4", + "nodeType": "VariableDeclaration", + "scope": 12337, + "src": "60892:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12317, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60892:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12320, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60906:2:4", + "nodeType": "VariableDeclaration", + "scope": 12337, + "src": "60901:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12319, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "60901:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12322, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60924:2:4", + "nodeType": "VariableDeclaration", + "scope": 12337, + "src": "60910:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12321, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60910:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "60879:48:4" + }, + "returnParameters": { + "id": 12324, + "nodeType": "ParameterList", + "parameters": [], + "src": "60942:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12360, + "nodeType": "FunctionDefinition", + "src": "61054:170:4", + "body": { + "id": 12359, + "nodeType": "Block", + "src": "61120:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e742c626f6f6c29", + "id": 12351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61170:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_85cdc5af22f2a2b52749c228b5bc379bac815d0d3575c2899b6657bce00fab33", + "typeString": "literal_string \"log(address,bool,uint,bool)\"" + }, + "value": "log(address,bool,uint,bool)" + }, + { + "id": 12352, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12339, + "src": "61201:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12353, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12341, + "src": "61205:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12354, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12343, + "src": "61209:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12355, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12345, + "src": "61213:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_85cdc5af22f2a2b52749c228b5bc379bac815d0d3575c2899b6657bce00fab33", + "typeString": "literal_string \"log(address,bool,uint,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12349, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61146:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61146:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12356, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61146:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12348, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "61130:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61130:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12358, + "nodeType": "ExpressionStatement", + "src": "61130:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61063:3:4", + "parameters": { + "id": 12346, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12339, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61075:2:4", + "nodeType": "VariableDeclaration", + "scope": 12360, + "src": "61067:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12338, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61067:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12341, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61084:2:4", + "nodeType": "VariableDeclaration", + "scope": 12360, + "src": "61079:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12340, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61079:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12343, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61093:2:4", + "nodeType": "VariableDeclaration", + "scope": 12360, + "src": "61088:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12342, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "61088:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12345, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61102:2:4", + "nodeType": "VariableDeclaration", + "scope": 12360, + "src": "61097:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12344, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61097:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "61066:39:4" + }, + "returnParameters": { + "id": 12347, + "nodeType": "ParameterList", + "parameters": [], + "src": "61120:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12383, + "nodeType": "FunctionDefinition", + "src": "61230:176:4", + "body": { + "id": 12382, + "nodeType": "Block", + "src": "61299:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e742c6164647265737329", + "id": 12374, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61349:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d8ce61ee7d058fd1e588343a35fb1aff71b8e7f74d553220d0e20088cb908bf", + "typeString": "literal_string \"log(address,bool,uint,address)\"" + }, + "value": "log(address,bool,uint,address)" + }, + { + "id": 12375, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12362, + "src": "61383:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12376, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12364, + "src": "61387:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12377, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12366, + "src": "61391:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12378, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12368, + "src": "61395:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d8ce61ee7d058fd1e588343a35fb1aff71b8e7f74d553220d0e20088cb908bf", + "typeString": "literal_string \"log(address,bool,uint,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12372, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61325:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12373, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61325:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61325:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12371, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "61309:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61309:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12381, + "nodeType": "ExpressionStatement", + "src": "61309:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61239:3:4", + "parameters": { + "id": 12369, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12362, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61251:2:4", + "nodeType": "VariableDeclaration", + "scope": 12383, + "src": "61243:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12361, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61243:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12364, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61260:2:4", + "nodeType": "VariableDeclaration", + "scope": 12383, + "src": "61255:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12363, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61255:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12366, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61269:2:4", + "nodeType": "VariableDeclaration", + "scope": 12383, + "src": "61264:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12365, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "61264:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12368, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61281:2:4", + "nodeType": "VariableDeclaration", + "scope": 12383, + "src": "61273:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12367, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61273:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61242:42:4" + }, + "returnParameters": { + "id": 12370, + "nodeType": "ParameterList", + "parameters": [], + "src": "61299:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12406, + "nodeType": "FunctionDefinition", + "src": "61412:181:4", + "body": { + "id": 12405, + "nodeType": "Block", + "src": "61487:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c75696e7429", + "id": 12397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61537:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9e127b6e4348bc33b3ea7f05f6479d3e1b1fe2b3727e1f4ba94b6a36e7abac9b", + "typeString": "literal_string \"log(address,bool,string,uint)\"" + }, + "value": "log(address,bool,string,uint)" + }, + { + "id": 12398, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12385, + "src": "61570:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12399, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12387, + "src": "61574:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12400, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12389, + "src": "61578:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12401, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12391, + "src": "61582:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9e127b6e4348bc33b3ea7f05f6479d3e1b1fe2b3727e1f4ba94b6a36e7abac9b", + "typeString": "literal_string \"log(address,bool,string,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12395, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61513:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12396, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61513:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61513:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12394, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "61497:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12403, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61497:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12404, + "nodeType": "ExpressionStatement", + "src": "61497:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61421:3:4", + "parameters": { + "id": 12392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12385, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61433:2:4", + "nodeType": "VariableDeclaration", + "scope": 12406, + "src": "61425:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12384, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61425:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12387, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61442:2:4", + "nodeType": "VariableDeclaration", + "scope": 12406, + "src": "61437:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12386, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61437:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12389, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61460:2:4", + "nodeType": "VariableDeclaration", + "scope": 12406, + "src": "61446:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12388, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61446:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12391, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61469:2:4", + "nodeType": "VariableDeclaration", + "scope": 12406, + "src": "61464:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12390, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "61464:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "61424:48:4" + }, + "returnParameters": { + "id": 12393, + "nodeType": "ParameterList", + "parameters": [], + "src": "61487:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12429, + "nodeType": "FunctionDefinition", + "src": "61599:192:4", + "body": { + "id": 12428, + "nodeType": "Block", + "src": "61683:108:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c737472696e6729", + "id": 12420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61733:33:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + "value": "log(address,bool,string,string)" + }, + { + "id": 12421, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12408, + "src": "61768:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12422, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12410, + "src": "61772:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12423, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12412, + "src": "61776:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12424, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12414, + "src": "61780:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12418, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61709:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61709:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12425, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61709:74:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12417, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "61693:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61693:91:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12427, + "nodeType": "ExpressionStatement", + "src": "61693:91:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61608:3:4", + "parameters": { + "id": 12415, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12408, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61620:2:4", + "nodeType": "VariableDeclaration", + "scope": 12429, + "src": "61612:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12407, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61612:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12410, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61629:2:4", + "nodeType": "VariableDeclaration", + "scope": 12429, + "src": "61624:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12409, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61624:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12412, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61647:2:4", + "nodeType": "VariableDeclaration", + "scope": 12429, + "src": "61633:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12411, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61633:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12414, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61665:2:4", + "nodeType": "VariableDeclaration", + "scope": 12429, + "src": "61651:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12413, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61651:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "61611:57:4" + }, + "returnParameters": { + "id": 12416, + "nodeType": "ParameterList", + "parameters": [], + "src": "61683:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12452, + "nodeType": "FunctionDefinition", + "src": "61797:181:4", + "body": { + "id": 12451, + "nodeType": "Block", + "src": "61872:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c626f6f6c29", + "id": 12443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61922:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + "value": "log(address,bool,string,bool)" + }, + { + "id": 12444, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12431, + "src": "61955:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12445, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12433, + "src": "61959:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12446, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12435, + "src": "61963:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12447, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12437, + "src": "61967:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12441, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61898:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61898:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12448, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61898:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12440, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "61882:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61882:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12450, + "nodeType": "ExpressionStatement", + "src": "61882:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61806:3:4", + "parameters": { + "id": 12438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12431, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61818:2:4", + "nodeType": "VariableDeclaration", + "scope": 12452, + "src": "61810:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12430, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61810:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12433, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61827:2:4", + "nodeType": "VariableDeclaration", + "scope": 12452, + "src": "61822:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12432, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61822:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12435, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61845:2:4", + "nodeType": "VariableDeclaration", + "scope": 12452, + "src": "61831:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12434, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61831:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12437, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61854:2:4", + "nodeType": "VariableDeclaration", + "scope": 12452, + "src": "61849:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12436, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61849:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "61809:48:4" + }, + "returnParameters": { + "id": 12439, + "nodeType": "ParameterList", + "parameters": [], + "src": "61872:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12475, + "nodeType": "FunctionDefinition", + "src": "61984:187:4", + "body": { + "id": 12474, + "nodeType": "Block", + "src": "62062:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c6164647265737329", + "id": 12466, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62112:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + "value": "log(address,bool,string,address)" + }, + { + "id": 12467, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12454, + "src": "62148:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12468, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12456, + "src": "62152:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12469, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12458, + "src": "62156:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12470, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12460, + "src": "62160:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12464, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62088:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62088:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62088:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12463, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62072:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62072:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12473, + "nodeType": "ExpressionStatement", + "src": "62072:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61993:3:4", + "parameters": { + "id": 12461, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12454, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62005:2:4", + "nodeType": "VariableDeclaration", + "scope": 12475, + "src": "61997:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12453, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61997:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12456, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62014:2:4", + "nodeType": "VariableDeclaration", + "scope": 12475, + "src": "62009:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12455, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62009:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12458, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62032:2:4", + "nodeType": "VariableDeclaration", + "scope": 12475, + "src": "62018:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12457, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62018:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12460, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62044:2:4", + "nodeType": "VariableDeclaration", + "scope": 12475, + "src": "62036:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12459, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62036:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61996:51:4" + }, + "returnParameters": { + "id": 12462, + "nodeType": "ParameterList", + "parameters": [], + "src": "62062:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12498, + "nodeType": "FunctionDefinition", + "src": "62177:170:4", + "body": { + "id": 12497, + "nodeType": "Block", + "src": "62243:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c75696e7429", + "id": 12489, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62293:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cfb587569c9e063cd7daed07e27d9193980aad24c48787cb6531c47fa694e463", + "typeString": "literal_string \"log(address,bool,bool,uint)\"" + }, + "value": "log(address,bool,bool,uint)" + }, + { + "id": 12490, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12477, + "src": "62324:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12491, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12479, + "src": "62328:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12492, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12481, + "src": "62332:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12493, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12483, + "src": "62336:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cfb587569c9e063cd7daed07e27d9193980aad24c48787cb6531c47fa694e463", + "typeString": "literal_string \"log(address,bool,bool,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12487, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62269:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12488, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62269:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62269:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12486, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62253:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62253:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12496, + "nodeType": "ExpressionStatement", + "src": "62253:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62186:3:4", + "parameters": { + "id": 12484, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12477, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62198:2:4", + "nodeType": "VariableDeclaration", + "scope": 12498, + "src": "62190:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12476, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62190:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12479, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62207:2:4", + "nodeType": "VariableDeclaration", + "scope": 12498, + "src": "62202:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12478, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62202:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12481, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62216:2:4", + "nodeType": "VariableDeclaration", + "scope": 12498, + "src": "62211:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12480, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62211:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12483, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62225:2:4", + "nodeType": "VariableDeclaration", + "scope": 12498, + "src": "62220:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12482, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "62220:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62189:39:4" + }, + "returnParameters": { + "id": 12485, + "nodeType": "ParameterList", + "parameters": [], + "src": "62243:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12521, + "nodeType": "FunctionDefinition", + "src": "62353:181:4", + "body": { + "id": 12520, + "nodeType": "Block", + "src": "62428:106:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c737472696e6729", + "id": 12512, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62478:31:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + "value": "log(address,bool,bool,string)" + }, + { + "id": 12513, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12500, + "src": "62511:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12514, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12502, + "src": "62515:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12515, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12504, + "src": "62519:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12516, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12506, + "src": "62523:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12510, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62454:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62454:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12517, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62454:72:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12509, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62438:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62438:89:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12519, + "nodeType": "ExpressionStatement", + "src": "62438:89:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62362:3:4", + "parameters": { + "id": 12507, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12500, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62374:2:4", + "nodeType": "VariableDeclaration", + "scope": 12521, + "src": "62366:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12499, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62366:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12502, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62383:2:4", + "nodeType": "VariableDeclaration", + "scope": 12521, + "src": "62378:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12501, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62378:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12504, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62392:2:4", + "nodeType": "VariableDeclaration", + "scope": 12521, + "src": "62387:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12503, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62387:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12506, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62410:2:4", + "nodeType": "VariableDeclaration", + "scope": 12521, + "src": "62396:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12505, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62396:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "62365:48:4" + }, + "returnParameters": { + "id": 12508, + "nodeType": "ParameterList", + "parameters": [], + "src": "62428:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12544, + "nodeType": "FunctionDefinition", + "src": "62540:170:4", + "body": { + "id": 12543, + "nodeType": "Block", + "src": "62606:104:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 12535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62656:29:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + "value": "log(address,bool,bool,bool)" + }, + { + "id": 12536, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12523, + "src": "62687:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12537, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12525, + "src": "62691:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12538, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12527, + "src": "62695:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12539, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12529, + "src": "62699:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12533, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62632:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62632:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62632:70:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12532, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62616:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12541, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62616:87:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12542, + "nodeType": "ExpressionStatement", + "src": "62616:87:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62549:3:4", + "parameters": { + "id": 12530, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12523, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62561:2:4", + "nodeType": "VariableDeclaration", + "scope": 12544, + "src": "62553:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12522, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62553:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12525, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62570:2:4", + "nodeType": "VariableDeclaration", + "scope": 12544, + "src": "62565:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12524, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62565:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12527, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62579:2:4", + "nodeType": "VariableDeclaration", + "scope": 12544, + "src": "62574:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12526, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62574:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12529, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62588:2:4", + "nodeType": "VariableDeclaration", + "scope": 12544, + "src": "62583:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12528, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62583:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "62552:39:4" + }, + "returnParameters": { + "id": 12531, + "nodeType": "ParameterList", + "parameters": [], + "src": "62606:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12567, + "nodeType": "FunctionDefinition", + "src": "62716:176:4", + "body": { + "id": 12566, + "nodeType": "Block", + "src": "62785:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c6164647265737329", + "id": 12558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62835:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + "value": "log(address,bool,bool,address)" + }, + { + "id": 12559, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12546, + "src": "62869:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12560, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12548, + "src": "62873:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12561, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12550, + "src": "62877:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12562, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12552, + "src": "62881:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12556, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62811:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62811:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62811:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12555, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62795:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62795:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12565, + "nodeType": "ExpressionStatement", + "src": "62795:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62725:3:4", + "parameters": { + "id": 12553, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12546, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62737:2:4", + "nodeType": "VariableDeclaration", + "scope": 12567, + "src": "62729:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12545, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62729:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12548, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62746:2:4", + "nodeType": "VariableDeclaration", + "scope": 12567, + "src": "62741:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12547, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62741:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12550, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62755:2:4", + "nodeType": "VariableDeclaration", + "scope": 12567, + "src": "62750:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12549, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62750:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12552, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62767:2:4", + "nodeType": "VariableDeclaration", + "scope": 12567, + "src": "62759:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12551, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62759:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "62728:42:4" + }, + "returnParameters": { + "id": 12554, + "nodeType": "ParameterList", + "parameters": [], + "src": "62785:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12590, + "nodeType": "FunctionDefinition", + "src": "62898:176:4", + "body": { + "id": 12589, + "nodeType": "Block", + "src": "62967:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c75696e7429", + "id": 12581, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63017:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc7116d2e67ccd625262e6814a6f82f2367beea9919409c81fcbb94bea1b6b84", + "typeString": "literal_string \"log(address,bool,address,uint)\"" + }, + "value": "log(address,bool,address,uint)" + }, + { + "id": 12582, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12569, + "src": "63051:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12583, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12571, + "src": "63055:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12584, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12573, + "src": "63059:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12585, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12575, + "src": "63063:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dc7116d2e67ccd625262e6814a6f82f2367beea9919409c81fcbb94bea1b6b84", + "typeString": "literal_string \"log(address,bool,address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12579, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62993:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62993:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62993:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12578, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "62977:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12587, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62977:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12588, + "nodeType": "ExpressionStatement", + "src": "62977:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62907:3:4", + "parameters": { + "id": 12576, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12569, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62919:2:4", + "nodeType": "VariableDeclaration", + "scope": 12590, + "src": "62911:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12568, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62911:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12571, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62928:2:4", + "nodeType": "VariableDeclaration", + "scope": 12590, + "src": "62923:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12570, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62923:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12573, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62940:2:4", + "nodeType": "VariableDeclaration", + "scope": 12590, + "src": "62932:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12572, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62932:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12575, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62949:2:4", + "nodeType": "VariableDeclaration", + "scope": 12590, + "src": "62944:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12574, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "62944:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62910:42:4" + }, + "returnParameters": { + "id": 12577, + "nodeType": "ParameterList", + "parameters": [], + "src": "62967:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12613, + "nodeType": "FunctionDefinition", + "src": "63080:187:4", + "body": { + "id": 12612, + "nodeType": "Block", + "src": "63158:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c737472696e6729", + "id": 12604, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63208:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + "value": "log(address,bool,address,string)" + }, + { + "id": 12605, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12592, + "src": "63244:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12606, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12594, + "src": "63248:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12607, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12596, + "src": "63252:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12608, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12598, + "src": "63256:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12602, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63184:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63184:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63184:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12601, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "63168:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63168:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12611, + "nodeType": "ExpressionStatement", + "src": "63168:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63089:3:4", + "parameters": { + "id": 12599, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12592, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63101:2:4", + "nodeType": "VariableDeclaration", + "scope": 12613, + "src": "63093:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12591, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63093:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12594, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63110:2:4", + "nodeType": "VariableDeclaration", + "scope": 12613, + "src": "63105:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12593, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63105:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12596, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63122:2:4", + "nodeType": "VariableDeclaration", + "scope": 12613, + "src": "63114:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12595, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63114:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12598, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63140:2:4", + "nodeType": "VariableDeclaration", + "scope": 12613, + "src": "63126:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12597, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63126:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63092:51:4" + }, + "returnParameters": { + "id": 12600, + "nodeType": "ParameterList", + "parameters": [], + "src": "63158:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12636, + "nodeType": "FunctionDefinition", + "src": "63273:176:4", + "body": { + "id": 12635, + "nodeType": "Block", + "src": "63342:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c626f6f6c29", + "id": 12627, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63392:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + "value": "log(address,bool,address,bool)" + }, + { + "id": 12628, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12615, + "src": "63426:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12629, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12617, + "src": "63430:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12630, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12619, + "src": "63434:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12631, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12621, + "src": "63438:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12625, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63368:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63368:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63368:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12624, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "63352:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63352:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12634, + "nodeType": "ExpressionStatement", + "src": "63352:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63282:3:4", + "parameters": { + "id": 12622, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12615, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63294:2:4", + "nodeType": "VariableDeclaration", + "scope": 12636, + "src": "63286:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12614, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63286:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12617, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63303:2:4", + "nodeType": "VariableDeclaration", + "scope": 12636, + "src": "63298:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12616, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63298:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12619, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63315:2:4", + "nodeType": "VariableDeclaration", + "scope": 12636, + "src": "63307:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12618, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63307:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12621, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63324:2:4", + "nodeType": "VariableDeclaration", + "scope": 12636, + "src": "63319:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12620, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63319:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "63285:42:4" + }, + "returnParameters": { + "id": 12623, + "nodeType": "ParameterList", + "parameters": [], + "src": "63342:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12659, + "nodeType": "FunctionDefinition", + "src": "63455:182:4", + "body": { + "id": 12658, + "nodeType": "Block", + "src": "63527:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c6164647265737329", + "id": 12650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63577:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + "value": "log(address,bool,address,address)" + }, + { + "id": 12651, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12638, + "src": "63614:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12652, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12640, + "src": "63618:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12653, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12642, + "src": "63622:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12654, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12644, + "src": "63626:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12648, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63553:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12649, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63553:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63553:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12647, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "63537:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63537:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12657, + "nodeType": "ExpressionStatement", + "src": "63537:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63464:3:4", + "parameters": { + "id": 12645, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12638, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63476:2:4", + "nodeType": "VariableDeclaration", + "scope": 12659, + "src": "63468:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12637, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63468:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12640, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63485:2:4", + "nodeType": "VariableDeclaration", + "scope": 12659, + "src": "63480:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12639, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63480:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12642, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63497:2:4", + "nodeType": "VariableDeclaration", + "scope": 12659, + "src": "63489:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12641, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63489:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12644, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63509:2:4", + "nodeType": "VariableDeclaration", + "scope": 12659, + "src": "63501:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12643, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63501:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "63467:45:4" + }, + "returnParameters": { + "id": 12646, + "nodeType": "ParameterList", + "parameters": [], + "src": "63527:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12682, + "nodeType": "FunctionDefinition", + "src": "63643:176:4", + "body": { + "id": 12681, + "nodeType": "Block", + "src": "63712:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e742c75696e7429", + "id": 12673, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63762:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_54fdf3e4fb94f9bebc9a1c60d5b71090f9817e68730b5af20b69dff283044ed6", + "typeString": "literal_string \"log(address,address,uint,uint)\"" + }, + "value": "log(address,address,uint,uint)" + }, + { + "id": 12674, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12661, + "src": "63796:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12675, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12663, + "src": "63800:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12676, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12665, + "src": "63804:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12677, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12667, + "src": "63808:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_54fdf3e4fb94f9bebc9a1c60d5b71090f9817e68730b5af20b69dff283044ed6", + "typeString": "literal_string \"log(address,address,uint,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12671, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63738:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63738:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63738:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12670, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "63722:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63722:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12680, + "nodeType": "ExpressionStatement", + "src": "63722:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63652:3:4", + "parameters": { + "id": 12668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12661, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63664:2:4", + "nodeType": "VariableDeclaration", + "scope": 12682, + "src": "63656:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12660, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63656:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12663, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63676:2:4", + "nodeType": "VariableDeclaration", + "scope": 12682, + "src": "63668:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12662, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63668:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12665, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63685:2:4", + "nodeType": "VariableDeclaration", + "scope": 12682, + "src": "63680:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12664, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "63680:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12667, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63694:2:4", + "nodeType": "VariableDeclaration", + "scope": 12682, + "src": "63689:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12666, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "63689:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "63655:42:4" + }, + "returnParameters": { + "id": 12669, + "nodeType": "ParameterList", + "parameters": [], + "src": "63712:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12705, + "nodeType": "FunctionDefinition", + "src": "63825:187:4", + "body": { + "id": 12704, + "nodeType": "Block", + "src": "63903:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e742c737472696e6729", + "id": 12696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63953:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9dd12eadc51edb79b050f95e9310706b305e500a52025b74b024df3cbcb53815", + "typeString": "literal_string \"log(address,address,uint,string)\"" + }, + "value": "log(address,address,uint,string)" + }, + { + "id": 12697, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12684, + "src": "63989:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12698, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12686, + "src": "63993:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12699, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12688, + "src": "63997:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12700, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12690, + "src": "64001:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9dd12eadc51edb79b050f95e9310706b305e500a52025b74b024df3cbcb53815", + "typeString": "literal_string \"log(address,address,uint,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12694, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63929:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12695, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63929:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63929:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12693, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "63913:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12702, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63913:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12703, + "nodeType": "ExpressionStatement", + "src": "63913:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63834:3:4", + "parameters": { + "id": 12691, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12684, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63846:2:4", + "nodeType": "VariableDeclaration", + "scope": 12705, + "src": "63838:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12683, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63838:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12686, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63858:2:4", + "nodeType": "VariableDeclaration", + "scope": 12705, + "src": "63850:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12685, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63850:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12688, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63867:2:4", + "nodeType": "VariableDeclaration", + "scope": 12705, + "src": "63862:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12687, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "63862:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12690, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63885:2:4", + "nodeType": "VariableDeclaration", + "scope": 12705, + "src": "63871:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12689, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63871:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63837:51:4" + }, + "returnParameters": { + "id": 12692, + "nodeType": "ParameterList", + "parameters": [], + "src": "63903:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12728, + "nodeType": "FunctionDefinition", + "src": "64018:176:4", + "body": { + "id": 12727, + "nodeType": "Block", + "src": "64087:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e742c626f6f6c29", + "id": 12719, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64137:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c2f688eccc5824e4375e54ae0df7ae9f757b0758319e26fa7dcc6a4450e1d411", + "typeString": "literal_string \"log(address,address,uint,bool)\"" + }, + "value": "log(address,address,uint,bool)" + }, + { + "id": 12720, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12707, + "src": "64171:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12721, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12709, + "src": "64175:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12722, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12711, + "src": "64179:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12723, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12713, + "src": "64183:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c2f688eccc5824e4375e54ae0df7ae9f757b0758319e26fa7dcc6a4450e1d411", + "typeString": "literal_string \"log(address,address,uint,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12717, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64113:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12718, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64113:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12724, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64113:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12716, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "64097:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12725, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64097:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12726, + "nodeType": "ExpressionStatement", + "src": "64097:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64027:3:4", + "parameters": { + "id": 12714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12707, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64039:2:4", + "nodeType": "VariableDeclaration", + "scope": 12728, + "src": "64031:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12706, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64031:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12709, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64051:2:4", + "nodeType": "VariableDeclaration", + "scope": 12728, + "src": "64043:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12708, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64043:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12711, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64060:2:4", + "nodeType": "VariableDeclaration", + "scope": 12728, + "src": "64055:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12710, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "64055:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12713, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64069:2:4", + "nodeType": "VariableDeclaration", + "scope": 12728, + "src": "64064:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12712, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64064:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64030:42:4" + }, + "returnParameters": { + "id": 12715, + "nodeType": "ParameterList", + "parameters": [], + "src": "64087:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12751, + "nodeType": "FunctionDefinition", + "src": "64200:182:4", + "body": { + "id": 12750, + "nodeType": "Block", + "src": "64272:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e742c6164647265737329", + "id": 12742, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64322:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6c65276d9b81968c5dbc7d91412af8260979b88b9036d81153645629a214556", + "typeString": "literal_string \"log(address,address,uint,address)\"" + }, + "value": "log(address,address,uint,address)" + }, + { + "id": 12743, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12730, + "src": "64359:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12744, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12732, + "src": "64363:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12745, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12734, + "src": "64367:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 12746, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12736, + "src": "64371:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6c65276d9b81968c5dbc7d91412af8260979b88b9036d81153645629a214556", + "typeString": "literal_string \"log(address,address,uint,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12740, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64298:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64298:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64298:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12739, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "64282:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12748, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64282:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12749, + "nodeType": "ExpressionStatement", + "src": "64282:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64209:3:4", + "parameters": { + "id": 12737, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12730, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64221:2:4", + "nodeType": "VariableDeclaration", + "scope": 12751, + "src": "64213:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12729, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64213:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12732, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64233:2:4", + "nodeType": "VariableDeclaration", + "scope": 12751, + "src": "64225:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12731, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64225:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12734, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64242:2:4", + "nodeType": "VariableDeclaration", + "scope": 12751, + "src": "64237:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12733, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "64237:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12736, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64254:2:4", + "nodeType": "VariableDeclaration", + "scope": 12751, + "src": "64246:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12735, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64246:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64212:45:4" + }, + "returnParameters": { + "id": 12738, + "nodeType": "ParameterList", + "parameters": [], + "src": "64272:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12774, + "nodeType": "FunctionDefinition", + "src": "64388:187:4", + "body": { + "id": 12773, + "nodeType": "Block", + "src": "64466:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c75696e7429", + "id": 12765, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64516:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04289300eaed00bb9d0d7894f7439ff06a8c4040945c0625e94f6f0c87fb11ba", + "typeString": "literal_string \"log(address,address,string,uint)\"" + }, + "value": "log(address,address,string,uint)" + }, + { + "id": 12766, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12753, + "src": "64552:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12767, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12755, + "src": "64556:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12768, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12757, + "src": "64560:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12769, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12759, + "src": "64564:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_04289300eaed00bb9d0d7894f7439ff06a8c4040945c0625e94f6f0c87fb11ba", + "typeString": "literal_string \"log(address,address,string,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12763, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64492:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12764, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64492:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64492:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12762, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "64476:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64476:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12772, + "nodeType": "ExpressionStatement", + "src": "64476:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64397:3:4", + "parameters": { + "id": 12760, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12753, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64409:2:4", + "nodeType": "VariableDeclaration", + "scope": 12774, + "src": "64401:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12752, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64401:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12755, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64421:2:4", + "nodeType": "VariableDeclaration", + "scope": 12774, + "src": "64413:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12754, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64413:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12757, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64439:2:4", + "nodeType": "VariableDeclaration", + "scope": 12774, + "src": "64425:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12756, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64425:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12759, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64448:2:4", + "nodeType": "VariableDeclaration", + "scope": 12774, + "src": "64443:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12758, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "64443:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "64400:51:4" + }, + "returnParameters": { + "id": 12761, + "nodeType": "ParameterList", + "parameters": [], + "src": "64466:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12797, + "nodeType": "FunctionDefinition", + "src": "64581:198:4", + "body": { + "id": 12796, + "nodeType": "Block", + "src": "64668:111:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c737472696e6729", + "id": 12788, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64718:36:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + "value": "log(address,address,string,string)" + }, + { + "id": 12789, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12776, + "src": "64756:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12790, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12778, + "src": "64760:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12791, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12780, + "src": "64764:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12792, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12782, + "src": "64768:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12786, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64694:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64694:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64694:77:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12785, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "64678:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64678:94:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12795, + "nodeType": "ExpressionStatement", + "src": "64678:94:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64590:3:4", + "parameters": { + "id": 12783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12776, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64602:2:4", + "nodeType": "VariableDeclaration", + "scope": 12797, + "src": "64594:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12775, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64594:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12778, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64614:2:4", + "nodeType": "VariableDeclaration", + "scope": 12797, + "src": "64606:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12777, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64606:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12780, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64632:2:4", + "nodeType": "VariableDeclaration", + "scope": 12797, + "src": "64618:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12779, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64618:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12782, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64650:2:4", + "nodeType": "VariableDeclaration", + "scope": 12797, + "src": "64636:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64636:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "64593:60:4" + }, + "returnParameters": { + "id": 12784, + "nodeType": "ParameterList", + "parameters": [], + "src": "64668:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12820, + "nodeType": "FunctionDefinition", + "src": "64785:187:4", + "body": { + "id": 12819, + "nodeType": "Block", + "src": "64863:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c626f6f6c29", + "id": 12811, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64913:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + "value": "log(address,address,string,bool)" + }, + { + "id": 12812, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12799, + "src": "64949:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12813, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12801, + "src": "64953:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12814, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12803, + "src": "64957:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12815, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12805, + "src": "64961:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12809, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64889:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12810, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64889:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64889:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12808, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "64873:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64873:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12818, + "nodeType": "ExpressionStatement", + "src": "64873:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64794:3:4", + "parameters": { + "id": 12806, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12799, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64806:2:4", + "nodeType": "VariableDeclaration", + "scope": 12820, + "src": "64798:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12798, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64798:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12801, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64818:2:4", + "nodeType": "VariableDeclaration", + "scope": 12820, + "src": "64810:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12800, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64810:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12803, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64836:2:4", + "nodeType": "VariableDeclaration", + "scope": 12820, + "src": "64822:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12802, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64822:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12805, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64845:2:4", + "nodeType": "VariableDeclaration", + "scope": 12820, + "src": "64840:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12804, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64840:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64797:51:4" + }, + "returnParameters": { + "id": 12807, + "nodeType": "ParameterList", + "parameters": [], + "src": "64863:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12843, + "nodeType": "FunctionDefinition", + "src": "64978:193:4", + "body": { + "id": 12842, + "nodeType": "Block", + "src": "65059:112:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c6164647265737329", + "id": 12834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65109:37:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + "value": "log(address,address,string,address)" + }, + { + "id": 12835, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12822, + "src": "65148:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12836, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12824, + "src": "65152:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12837, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12826, + "src": "65156:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 12838, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12828, + "src": "65160:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12832, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65085:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12833, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65085:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65085:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12831, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "65069:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65069:95:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12841, + "nodeType": "ExpressionStatement", + "src": "65069:95:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64987:3:4", + "parameters": { + "id": 12829, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12822, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64999:2:4", + "nodeType": "VariableDeclaration", + "scope": 12843, + "src": "64991:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12821, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64991:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12824, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65011:2:4", + "nodeType": "VariableDeclaration", + "scope": 12843, + "src": "65003:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12823, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65003:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12826, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65029:2:4", + "nodeType": "VariableDeclaration", + "scope": 12843, + "src": "65015:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12825, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "65015:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12828, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65041:2:4", + "nodeType": "VariableDeclaration", + "scope": 12843, + "src": "65033:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12827, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65033:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64990:54:4" + }, + "returnParameters": { + "id": 12830, + "nodeType": "ParameterList", + "parameters": [], + "src": "65059:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12866, + "nodeType": "FunctionDefinition", + "src": "65177:176:4", + "body": { + "id": 12865, + "nodeType": "Block", + "src": "65246:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c75696e7429", + "id": 12857, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65296:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_95d65f110e4042ee84d162cfc6d17a44c2f2784259e33c97679d21e7a95a841e", + "typeString": "literal_string \"log(address,address,bool,uint)\"" + }, + "value": "log(address,address,bool,uint)" + }, + { + "id": 12858, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12845, + "src": "65330:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12859, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12847, + "src": "65334:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12860, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12849, + "src": "65338:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12861, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12851, + "src": "65342:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_95d65f110e4042ee84d162cfc6d17a44c2f2784259e33c97679d21e7a95a841e", + "typeString": "literal_string \"log(address,address,bool,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12855, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65272:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12856, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65272:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12862, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65272:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12854, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "65256:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12863, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65256:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12864, + "nodeType": "ExpressionStatement", + "src": "65256:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65186:3:4", + "parameters": { + "id": 12852, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12845, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65198:2:4", + "nodeType": "VariableDeclaration", + "scope": 12866, + "src": "65190:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12844, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65190:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12847, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65210:2:4", + "nodeType": "VariableDeclaration", + "scope": 12866, + "src": "65202:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12846, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65202:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12849, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65219:2:4", + "nodeType": "VariableDeclaration", + "scope": 12866, + "src": "65214:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12848, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65214:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12851, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65228:2:4", + "nodeType": "VariableDeclaration", + "scope": 12866, + "src": "65223:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12850, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "65223:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65189:42:4" + }, + "returnParameters": { + "id": 12853, + "nodeType": "ParameterList", + "parameters": [], + "src": "65246:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12889, + "nodeType": "FunctionDefinition", + "src": "65359:187:4", + "body": { + "id": 12888, + "nodeType": "Block", + "src": "65437:109:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c737472696e6729", + "id": 12880, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65487:34:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + "value": "log(address,address,bool,string)" + }, + { + "id": 12881, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12868, + "src": "65523:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12882, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12870, + "src": "65527:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12883, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12872, + "src": "65531:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12884, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12874, + "src": "65535:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12878, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65463:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12879, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65463:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65463:75:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12877, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "65447:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65447:92:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12887, + "nodeType": "ExpressionStatement", + "src": "65447:92:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65368:3:4", + "parameters": { + "id": 12875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12868, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65380:2:4", + "nodeType": "VariableDeclaration", + "scope": 12889, + "src": "65372:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12867, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65372:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12870, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65392:2:4", + "nodeType": "VariableDeclaration", + "scope": 12889, + "src": "65384:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12869, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65384:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12872, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65401:2:4", + "nodeType": "VariableDeclaration", + "scope": 12889, + "src": "65396:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12871, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65396:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12874, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65419:2:4", + "nodeType": "VariableDeclaration", + "scope": 12889, + "src": "65405:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12873, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "65405:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "65371:51:4" + }, + "returnParameters": { + "id": 12876, + "nodeType": "ParameterList", + "parameters": [], + "src": "65437:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12912, + "nodeType": "FunctionDefinition", + "src": "65552:176:4", + "body": { + "id": 12911, + "nodeType": "Block", + "src": "65621:107:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c626f6f6c29", + "id": 12903, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65671:32:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + "value": "log(address,address,bool,bool)" + }, + { + "id": 12904, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12891, + "src": "65705:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12905, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12893, + "src": "65709:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12906, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12895, + "src": "65713:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12907, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12897, + "src": "65717:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12901, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65647:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12902, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65647:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65647:73:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12900, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "65631:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65631:90:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12910, + "nodeType": "ExpressionStatement", + "src": "65631:90:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65561:3:4", + "parameters": { + "id": 12898, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12891, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65573:2:4", + "nodeType": "VariableDeclaration", + "scope": 12912, + "src": "65565:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12890, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65565:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12893, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65585:2:4", + "nodeType": "VariableDeclaration", + "scope": 12912, + "src": "65577:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12892, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65577:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12895, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65594:2:4", + "nodeType": "VariableDeclaration", + "scope": 12912, + "src": "65589:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12894, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65589:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12897, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65603:2:4", + "nodeType": "VariableDeclaration", + "scope": 12912, + "src": "65598:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12896, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65598:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "65564:42:4" + }, + "returnParameters": { + "id": 12899, + "nodeType": "ParameterList", + "parameters": [], + "src": "65621:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12935, + "nodeType": "FunctionDefinition", + "src": "65734:182:4", + "body": { + "id": 12934, + "nodeType": "Block", + "src": "65806:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c6164647265737329", + "id": 12926, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65856:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + "value": "log(address,address,bool,address)" + }, + { + "id": 12927, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12914, + "src": "65893:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12928, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12916, + "src": "65897:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12929, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12918, + "src": "65901:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 12930, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12920, + "src": "65905:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 12924, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65832:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12925, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65832:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12931, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65832:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12923, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "65816:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65816:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12933, + "nodeType": "ExpressionStatement", + "src": "65816:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65743:3:4", + "parameters": { + "id": 12921, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12914, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65755:2:4", + "nodeType": "VariableDeclaration", + "scope": 12935, + "src": "65747:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12913, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65747:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12916, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65767:2:4", + "nodeType": "VariableDeclaration", + "scope": 12935, + "src": "65759:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12915, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65759:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12918, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65776:2:4", + "nodeType": "VariableDeclaration", + "scope": 12935, + "src": "65771:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12917, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65771:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12920, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65788:2:4", + "nodeType": "VariableDeclaration", + "scope": 12935, + "src": "65780:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12919, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65780:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "65746:45:4" + }, + "returnParameters": { + "id": 12922, + "nodeType": "ParameterList", + "parameters": [], + "src": "65806:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12958, + "nodeType": "FunctionDefinition", + "src": "65922:182:4", + "body": { + "id": 12957, + "nodeType": "Block", + "src": "65994:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c75696e7429", + "id": 12949, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66044:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed5eac8706392442fff9f76d5de4d50b9cc22387f3f19d447470771094406028", + "typeString": "literal_string \"log(address,address,address,uint)\"" + }, + "value": "log(address,address,address,uint)" + }, + { + "id": 12950, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12937, + "src": "66081:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12951, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12939, + "src": "66085:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12952, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12941, + "src": "66089:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12953, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12943, + "src": "66093:2:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed5eac8706392442fff9f76d5de4d50b9cc22387f3f19d447470771094406028", + "typeString": "literal_string \"log(address,address,address,uint)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 12947, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66020:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12948, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66020:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12954, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66020:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12946, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "66004:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66004:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12956, + "nodeType": "ExpressionStatement", + "src": "66004:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65931:3:4", + "parameters": { + "id": 12944, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12937, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65943:2:4", + "nodeType": "VariableDeclaration", + "scope": 12958, + "src": "65935:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12936, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65935:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12939, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65955:2:4", + "nodeType": "VariableDeclaration", + "scope": 12958, + "src": "65947:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12938, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65947:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12941, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65967:2:4", + "nodeType": "VariableDeclaration", + "scope": 12958, + "src": "65959:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12940, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65959:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12943, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65976:2:4", + "nodeType": "VariableDeclaration", + "scope": 12958, + "src": "65971:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12942, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "65971:4:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65934:45:4" + }, + "returnParameters": { + "id": 12945, + "nodeType": "ParameterList", + "parameters": [], + "src": "65994:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 12981, + "nodeType": "FunctionDefinition", + "src": "66110:193:4", + "body": { + "id": 12980, + "nodeType": "Block", + "src": "66191:112:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c737472696e6729", + "id": 12972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66241:37:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + "value": "log(address,address,address,string)" + }, + { + "id": 12973, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12960, + "src": "66280:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12974, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12962, + "src": "66284:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12975, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12964, + "src": "66288:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12976, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12966, + "src": "66292:2:4", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 12970, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66217:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66217:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 12977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66217:78:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12969, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "66201:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 12978, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66201:95:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 12979, + "nodeType": "ExpressionStatement", + "src": "66201:95:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66119:3:4", + "parameters": { + "id": 12967, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12960, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66131:2:4", + "nodeType": "VariableDeclaration", + "scope": 12981, + "src": "66123:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12959, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66123:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12962, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66143:2:4", + "nodeType": "VariableDeclaration", + "scope": 12981, + "src": "66135:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12961, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66135:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12964, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66155:2:4", + "nodeType": "VariableDeclaration", + "scope": 12981, + "src": "66147:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66147:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12966, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66173:2:4", + "nodeType": "VariableDeclaration", + "scope": 12981, + "src": "66159:16:4", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 12965, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66159:6:4", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "66122:54:4" + }, + "returnParameters": { + "id": 12968, + "nodeType": "ParameterList", + "parameters": [], + "src": "66191:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13004, + "nodeType": "FunctionDefinition", + "src": "66309:182:4", + "body": { + "id": 13003, + "nodeType": "Block", + "src": "66381:110:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c626f6f6c29", + "id": 12995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66431:35:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + "value": "log(address,address,address,bool)" + }, + { + "id": 12996, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12983, + "src": "66468:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12997, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12985, + "src": "66472:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12998, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12987, + "src": "66476:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 12999, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12989, + "src": "66480:2:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 12993, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66407:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 12994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66407:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66407:76:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 12992, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "66391:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13001, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66391:93:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13002, + "nodeType": "ExpressionStatement", + "src": "66391:93:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66318:3:4", + "parameters": { + "id": 12990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 12983, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66330:2:4", + "nodeType": "VariableDeclaration", + "scope": 13004, + "src": "66322:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12982, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66322:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12985, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66342:2:4", + "nodeType": "VariableDeclaration", + "scope": 13004, + "src": "66334:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12984, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66334:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12987, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66354:2:4", + "nodeType": "VariableDeclaration", + "scope": 13004, + "src": "66346:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 12986, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66346:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 12989, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66363:2:4", + "nodeType": "VariableDeclaration", + "scope": 13004, + "src": "66358:7:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 12988, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "66358:4:4", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "66321:45:4" + }, + "returnParameters": { + "id": 12991, + "nodeType": "ParameterList", + "parameters": [], + "src": "66381:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13027, + "nodeType": "FunctionDefinition", + "src": "66497:188:4", + "body": { + "id": 13026, + "nodeType": "Block", + "src": "66572:113:4", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c6164647265737329", + "id": 13018, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66622:38:4", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + "value": "log(address,address,address,address)" + }, + { + "id": 13019, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13006, + "src": "66662:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13020, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13008, + "src": "66666:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13021, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13010, + "src": "66670:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13022, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13012, + "src": "66674:2:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13016, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66598:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66598:23:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66598:79:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13015, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4988, + "src": "66582:15:4", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66582:96:4", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13025, + "nodeType": "ExpressionStatement", + "src": "66582:96:4" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66506:3:4", + "parameters": { + "id": 13013, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13006, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66518:2:4", + "nodeType": "VariableDeclaration", + "scope": 13027, + "src": "66510:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13005, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66510:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13008, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66530:2:4", + "nodeType": "VariableDeclaration", + "scope": 13027, + "src": "66522:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13007, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66522:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13010, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66542:2:4", + "nodeType": "VariableDeclaration", + "scope": 13027, + "src": "66534:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13009, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66534:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13012, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66554:2:4", + "nodeType": "VariableDeclaration", + "scope": 13027, + "src": "66546:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13011, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66546:7:4", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "66509:48:4" + }, + "returnParameters": { + "id": 13014, + "nodeType": "ParameterList", + "parameters": [], + "src": "66572:0:4" + }, + "scope": 13028, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "console", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 13028 + ], + "name": "console", + "nameLocation": "74:7:4", + "scope": 13029, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 4 +} \ No newline at end of file diff --git a/getting-started/foundry/out/console2.sol/console2.json b/getting-started/foundry/out/console2.sol/console2.json new file mode 100644 index 00000000..fcbbdb74 --- /dev/null +++ b/getting-started/foundry/out/console2.sol/console2.json @@ -0,0 +1,109679 @@ +{ + "abi": [], + "bytecode": { + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d05e5e9f514904d88eca23bbc4a316dc8cb04d9682c00c79cbe7fc10303a2f1d64736f6c634300080d0033", + "sourceMap": "515:68470:5:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;515:68470:5;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220d05e5e9f514904d88eca23bbc4a316dc8cb04d9682c00c79cbe7fc10303a2f1d64736f6c634300080d0033", + "sourceMap": "515:68470:5:-:0;;;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "lib/forge-std/src/console2.sol", + "id": 21093, + "exportedSymbols": { + "console2": [ + 21092 + ] + }, + "nodeType": "SourceUnit", + "src": "32:68953:5", + "nodes": [ + { + "id": 13030, + "nodeType": "PragmaDirective", + "src": "32:32:5", + "literals": [ + "solidity", + ">=", + "0.4", + ".22", + "<", + "0.9", + ".0" + ] + }, + { + "id": 21092, + "nodeType": "ContractDefinition", + "src": "515:68470:5", + "nodes": [ + { + "id": 13036, + "nodeType": "VariableDeclaration", + "src": "538:86:5", + "constant": true, + "mutability": "constant", + "name": "CONSOLE_ADDRESS", + "nameLocation": "555:15:5", + "scope": 21092, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13031, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "538:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "arguments": [ + { + "hexValue": "307830303030303030303030303030303030303036333646366537333646366336353265366336663637", + "id": 13034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "581:42:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "value": "0x000000000000000000636F6e736F6c652e6c6f67" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 13033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "573:7:5", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 13032, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "573:7:5", + "typeDescriptions": {} + } + }, + "id": 13035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "573:51:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "id": 13052, + "nodeType": "FunctionDefinition", + "src": "631:333:5", + "body": { + "id": 13051, + "nodeType": "Block", + "src": "691:273:5", + "statements": [ + { + "assignments": [ + 13042 + ], + "declarations": [ + { + "constant": false, + "id": 13042, + "mutability": "mutable", + "name": "payloadLength", + "nameLocation": "709:13:5", + "nodeType": "VariableDeclaration", + "scope": 13051, + "src": "701:21:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13041, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "701:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 13045, + "initialValue": { + "expression": { + "id": 13043, + "name": "payload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13038, + "src": "725:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 13044, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "725:14:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "701:38:5" + }, + { + "assignments": [ + 13047 + ], + "declarations": [ + { + "constant": false, + "id": 13047, + "mutability": "mutable", + "name": "consoleAddress", + "nameLocation": "757:14:5", + "nodeType": "VariableDeclaration", + "scope": 13051, + "src": "749:22:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13046, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "749:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 13049, + "initialValue": { + "id": 13048, + "name": "CONSOLE_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13036, + "src": "774:15:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "749:40:5" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "808:150:5", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "822:36:5", + "value": { + "arguments": [ + { + "name": "payload", + "nodeType": "YulIdentifier", + "src": "846:7:5" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "855:2:5", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "842:3:5" + }, + "nodeType": "YulFunctionCall", + "src": "842:16:5" + }, + "variables": [ + { + "name": "payloadStart", + "nodeType": "YulTypedName", + "src": "826:12:5", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "871:77:5", + "value": { + "arguments": [ + { + "arguments": [], + "functionName": { + "name": "gas", + "nodeType": "YulIdentifier", + "src": "891:3:5" + }, + "nodeType": "YulFunctionCall", + "src": "891:5:5" + }, + { + "name": "consoleAddress", + "nodeType": "YulIdentifier", + "src": "898:14:5" + }, + { + "name": "payloadStart", + "nodeType": "YulIdentifier", + "src": "914:12:5" + }, + { + "name": "payloadLength", + "nodeType": "YulIdentifier", + "src": "928:13:5" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "943:1:5", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "946:1:5", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "staticcall", + "nodeType": "YulIdentifier", + "src": "880:10:5" + }, + "nodeType": "YulFunctionCall", + "src": "880:68:5" + }, + "variables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "875:1:5", + "type": "" + } + ] + } + ] + }, + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 13047, + "isOffset": false, + "isSlot": false, + "src": "898:14:5", + "valueSize": 1 + }, + { + "declaration": 13038, + "isOffset": false, + "isSlot": false, + "src": "846:7:5", + "valueSize": 1 + }, + { + "declaration": 13042, + "isOffset": false, + "isSlot": false, + "src": "928:13:5", + "valueSize": 1 + } + ], + "id": 13050, + "nodeType": "InlineAssembly", + "src": "799:159:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "_sendLogPayload", + "nameLocation": "640:15:5", + "parameters": { + "id": 13039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13038, + "mutability": "mutable", + "name": "payload", + "nameLocation": "669:7:5", + "nodeType": "VariableDeclaration", + "scope": 13052, + "src": "656:20:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13037, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "656:5:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "655:22:5" + }, + "returnParameters": { + "id": 13040, + "nodeType": "ParameterList", + "parameters": [], + "src": "691:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "private" + }, + { + "id": 13063, + "nodeType": "FunctionDefinition", + "src": "970:95:5", + "body": { + "id": 13062, + "nodeType": "Block", + "src": "999:66:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672829", + "id": 13058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1049:7:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + }, + "value": "log()" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51973ec9d4c1929bdd5b149c064d46aee47e92a7e2bb5f7a20c7b9cfb0d13b39", + "typeString": "literal_string \"log()\"" + } + ], + "expression": { + "id": 13056, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1025:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1025:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13059, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1025:32:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13055, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1009:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1009:49:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13061, + "nodeType": "ExpressionStatement", + "src": "1009:49:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "979:3:5", + "parameters": { + "id": 13053, + "nodeType": "ParameterList", + "parameters": [], + "src": "982:2:5" + }, + "returnParameters": { + "id": 13054, + "nodeType": "ParameterList", + "parameters": [], + "src": "999:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13077, + "nodeType": "FunctionDefinition", + "src": "1071:117:5", + "body": { + "id": 13076, + "nodeType": "Block", + "src": "1112:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728696e7432353629", + "id": 13071, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1162:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d5b6cb95ba2d00a93cd4ffa61ec07ef4bb1694f20c02a3cccb170a38df81ef8", + "typeString": "literal_string \"log(int256)\"" + }, + "value": "log(int256)" + }, + { + "id": 13072, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13065, + "src": "1177:2:5", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d5b6cb95ba2d00a93cd4ffa61ec07ef4bb1694f20c02a3cccb170a38df81ef8", + "typeString": "literal_string \"log(int256)\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 13069, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1138:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1138:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13073, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1138:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13068, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1122:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1122:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13075, + "nodeType": "ExpressionStatement", + "src": "1122:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logInt", + "nameLocation": "1080:6:5", + "parameters": { + "id": 13066, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13065, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1094:2:5", + "nodeType": "VariableDeclaration", + "scope": 13077, + "src": "1087:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 13064, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "1087:6:5", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1086:11:5" + }, + "returnParameters": { + "id": 13067, + "nodeType": "ParameterList", + "parameters": [], + "src": "1112:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13091, + "nodeType": "FunctionDefinition", + "src": "1194:120:5", + "body": { + "id": 13090, + "nodeType": "Block", + "src": "1237:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7432353629", + "id": 13085, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1287:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + "value": "log(uint256)" + }, + { + "id": 13086, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13079, + "src": "1303:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13083, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1263:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13084, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1263:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1263:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13082, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1247:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1247:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13089, + "nodeType": "ExpressionStatement", + "src": "1247:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logUint", + "nameLocation": "1203:7:5", + "parameters": { + "id": 13080, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13079, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1219:2:5", + "nodeType": "VariableDeclaration", + "scope": 13091, + "src": "1211:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13078, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1211:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1210:12:5" + }, + "returnParameters": { + "id": 13081, + "nodeType": "ParameterList", + "parameters": [], + "src": "1237:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13105, + "nodeType": "FunctionDefinition", + "src": "1320:127:5", + "body": { + "id": 13104, + "nodeType": "Block", + "src": "1371:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 13099, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1421:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 13100, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13093, + "src": "1436:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13097, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1397:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13098, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1397:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13101, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1397:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13096, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1381:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1381:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13103, + "nodeType": "ExpressionStatement", + "src": "1381:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logString", + "nameLocation": "1329:9:5", + "parameters": { + "id": 13094, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13093, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1353:2:5", + "nodeType": "VariableDeclaration", + "scope": 13105, + "src": "1339:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13092, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1339:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1338:18:5" + }, + "returnParameters": { + "id": 13095, + "nodeType": "ParameterList", + "parameters": [], + "src": "1371:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13119, + "nodeType": "FunctionDefinition", + "src": "1453:114:5", + "body": { + "id": 13118, + "nodeType": "Block", + "src": "1493:74:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 13113, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1543:11:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 13114, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13107, + "src": "1556:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13111, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1519:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13112, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1519:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1519:40:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13110, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1503:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1503:57:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13117, + "nodeType": "ExpressionStatement", + "src": "1503:57:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBool", + "nameLocation": "1462:7:5", + "parameters": { + "id": 13108, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13107, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1475:2:5", + "nodeType": "VariableDeclaration", + "scope": 13119, + "src": "1470:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13106, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1470:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1469:9:5" + }, + "returnParameters": { + "id": 13109, + "nodeType": "ParameterList", + "parameters": [], + "src": "1493:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13133, + "nodeType": "FunctionDefinition", + "src": "1573:123:5", + "body": { + "id": 13132, + "nodeType": "Block", + "src": "1619:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 13127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1669:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 13128, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13121, + "src": "1685:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13125, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1645:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1645:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1645:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13124, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1629:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1629:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13131, + "nodeType": "ExpressionStatement", + "src": "1629:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logAddress", + "nameLocation": "1582:10:5", + "parameters": { + "id": 13122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13121, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1601:2:5", + "nodeType": "VariableDeclaration", + "scope": 13133, + "src": "1593:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13120, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1593:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1592:12:5" + }, + "returnParameters": { + "id": 13123, + "nodeType": "ParameterList", + "parameters": [], + "src": "1619:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13147, + "nodeType": "FunctionDefinition", + "src": "1702:124:5", + "body": { + "id": 13146, + "nodeType": "Block", + "src": "1751:75:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728627974657329", + "id": 13141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1801:12:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + "value": "log(bytes)" + }, + { + "id": 13142, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13135, + "src": "1815:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0be77f5642494da7d212b92a3472c4f471abb24e17467f41788e7de7915d6238", + "typeString": "literal_string \"log(bytes)\"" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 13139, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1777:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1777:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1777:41:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13138, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1761:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1761:58:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13145, + "nodeType": "ExpressionStatement", + "src": "1761:58:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes", + "nameLocation": "1711:8:5", + "parameters": { + "id": 13136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13135, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1733:2:5", + "nodeType": "VariableDeclaration", + "scope": 13147, + "src": "1720:15:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 13134, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1720:5:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1719:17:5" + }, + "returnParameters": { + "id": 13137, + "nodeType": "ParameterList", + "parameters": [], + "src": "1751:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13161, + "nodeType": "FunctionDefinition", + "src": "1832:120:5", + "body": { + "id": 13160, + "nodeType": "Block", + "src": "1876:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733129", + "id": 13155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1926:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + "value": "log(bytes1)" + }, + { + "id": 13156, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13149, + "src": "1941:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6e18a1285e3dfba09579e846ff83d5e4ffae1b869c8fc4323752bab794e41041", + "typeString": "literal_string \"log(bytes1)\"" + }, + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "expression": { + "id": 13153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "1902:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "1902:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13157, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1902:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13152, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "1886:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1886:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13159, + "nodeType": "ExpressionStatement", + "src": "1886:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes1", + "nameLocation": "1841:9:5", + "parameters": { + "id": 13150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13149, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1858:2:5", + "nodeType": "VariableDeclaration", + "scope": 13161, + "src": "1851:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "typeName": { + "id": 13148, + "name": "bytes1", + "nodeType": "ElementaryTypeName", + "src": "1851:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "visibility": "internal" + } + ], + "src": "1850:11:5" + }, + "returnParameters": { + "id": 13151, + "nodeType": "ParameterList", + "parameters": [], + "src": "1876:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13175, + "nodeType": "FunctionDefinition", + "src": "1958:120:5", + "body": { + "id": 13174, + "nodeType": "Block", + "src": "2002:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733229", + "id": 13169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2052:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + "value": "log(bytes2)" + }, + { + "id": 13170, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13163, + "src": "2067:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9b622960ff3a0e86d35e876bfeba445fab6c5686604aa116c47c1e106921224", + "typeString": "literal_string \"log(bytes2)\"" + }, + { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + ], + "expression": { + "id": 13167, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2028:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2028:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13171, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2028:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13166, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2012:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2012:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13173, + "nodeType": "ExpressionStatement", + "src": "2012:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes2", + "nameLocation": "1967:9:5", + "parameters": { + "id": 13164, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13163, + "mutability": "mutable", + "name": "p0", + "nameLocation": "1984:2:5", + "nodeType": "VariableDeclaration", + "scope": 13175, + "src": "1977:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + }, + "typeName": { + "id": 13162, + "name": "bytes2", + "nodeType": "ElementaryTypeName", + "src": "1977:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes2", + "typeString": "bytes2" + } + }, + "visibility": "internal" + } + ], + "src": "1976:11:5" + }, + "returnParameters": { + "id": 13165, + "nodeType": "ParameterList", + "parameters": [], + "src": "2002:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13189, + "nodeType": "FunctionDefinition", + "src": "2084:120:5", + "body": { + "id": 13188, + "nodeType": "Block", + "src": "2128:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733329", + "id": 13183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2178:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + "value": "log(bytes3)" + }, + { + "id": 13184, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13177, + "src": "2193:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8349266851a1d92746f90a9696920643311d6bf462d9fa11e69718a636cbee", + "typeString": "literal_string \"log(bytes3)\"" + }, + { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + ], + "expression": { + "id": 13181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2154:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2154:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13185, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2154:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13180, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2138:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13186, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2138:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13187, + "nodeType": "ExpressionStatement", + "src": "2138:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes3", + "nameLocation": "2093:9:5", + "parameters": { + "id": 13178, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13177, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2110:2:5", + "nodeType": "VariableDeclaration", + "scope": 13189, + "src": "2103:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + }, + "typeName": { + "id": 13176, + "name": "bytes3", + "nodeType": "ElementaryTypeName", + "src": "2103:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes3", + "typeString": "bytes3" + } + }, + "visibility": "internal" + } + ], + "src": "2102:11:5" + }, + "returnParameters": { + "id": 13179, + "nodeType": "ParameterList", + "parameters": [], + "src": "2128:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13203, + "nodeType": "FunctionDefinition", + "src": "2210:120:5", + "body": { + "id": 13202, + "nodeType": "Block", + "src": "2254:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733429", + "id": 13197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2304:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + "value": "log(bytes4)" + }, + { + "id": 13198, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13191, + "src": "2319:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e05f48d17f80c0f06e82dc14f4be9f0f654dde2e722a8d8796ad7e07f5308d55", + "typeString": "literal_string \"log(bytes4)\"" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + ], + "expression": { + "id": 13195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2280:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2280:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2280:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13194, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2264:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2264:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13201, + "nodeType": "ExpressionStatement", + "src": "2264:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes4", + "nameLocation": "2219:9:5", + "parameters": { + "id": 13192, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13191, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2236:2:5", + "nodeType": "VariableDeclaration", + "scope": 13203, + "src": "2229:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 13190, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2229:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "2228:11:5" + }, + "returnParameters": { + "id": 13193, + "nodeType": "ParameterList", + "parameters": [], + "src": "2254:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13217, + "nodeType": "FunctionDefinition", + "src": "2336:120:5", + "body": { + "id": 13216, + "nodeType": "Block", + "src": "2380:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733529", + "id": 13211, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2430:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + "value": "log(bytes5)" + }, + { + "id": 13212, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13205, + "src": "2445:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a684808d222f8a67c08dd13085391d5e9d1825d9fb6e2da44a91b1a07d07401a", + "typeString": "literal_string \"log(bytes5)\"" + }, + { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + ], + "expression": { + "id": 13209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2406:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2406:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2406:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13208, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2390:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2390:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13215, + "nodeType": "ExpressionStatement", + "src": "2390:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes5", + "nameLocation": "2345:9:5", + "parameters": { + "id": 13206, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13205, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2362:2:5", + "nodeType": "VariableDeclaration", + "scope": 13217, + "src": "2355:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + }, + "typeName": { + "id": 13204, + "name": "bytes5", + "nodeType": "ElementaryTypeName", + "src": "2355:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes5", + "typeString": "bytes5" + } + }, + "visibility": "internal" + } + ], + "src": "2354:11:5" + }, + "returnParameters": { + "id": 13207, + "nodeType": "ParameterList", + "parameters": [], + "src": "2380:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13231, + "nodeType": "FunctionDefinition", + "src": "2462:120:5", + "body": { + "id": 13230, + "nodeType": "Block", + "src": "2506:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733629", + "id": 13225, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2556:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + "value": "log(bytes6)" + }, + { + "id": 13226, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13219, + "src": "2571:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ae84a5910824668818be6031303edf0f6f3694b35d5e6f9683950d57ef12d330", + "typeString": "literal_string \"log(bytes6)\"" + }, + { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + ], + "expression": { + "id": 13223, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2532:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13224, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2532:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2532:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13222, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2516:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2516:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13229, + "nodeType": "ExpressionStatement", + "src": "2516:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes6", + "nameLocation": "2471:9:5", + "parameters": { + "id": 13220, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13219, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2488:2:5", + "nodeType": "VariableDeclaration", + "scope": 13231, + "src": "2481:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + }, + "typeName": { + "id": 13218, + "name": "bytes6", + "nodeType": "ElementaryTypeName", + "src": "2481:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes6", + "typeString": "bytes6" + } + }, + "visibility": "internal" + } + ], + "src": "2480:11:5" + }, + "returnParameters": { + "id": 13221, + "nodeType": "ParameterList", + "parameters": [], + "src": "2506:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13245, + "nodeType": "FunctionDefinition", + "src": "2588:120:5", + "body": { + "id": 13244, + "nodeType": "Block", + "src": "2632:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733729", + "id": 13239, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2682:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + "value": "log(bytes7)" + }, + { + "id": 13240, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13233, + "src": "2697:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4ed57e28813457436949e4ec0a834b3c8262cd6cebd21953ee0da3400ce2de29", + "typeString": "literal_string \"log(bytes7)\"" + }, + { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + ], + "expression": { + "id": 13237, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2658:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13238, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2658:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13241, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2658:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13236, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2642:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2642:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13243, + "nodeType": "ExpressionStatement", + "src": "2642:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes7", + "nameLocation": "2597:9:5", + "parameters": { + "id": 13234, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13233, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2614:2:5", + "nodeType": "VariableDeclaration", + "scope": 13245, + "src": "2607:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + }, + "typeName": { + "id": 13232, + "name": "bytes7", + "nodeType": "ElementaryTypeName", + "src": "2607:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes7", + "typeString": "bytes7" + } + }, + "visibility": "internal" + } + ], + "src": "2606:11:5" + }, + "returnParameters": { + "id": 13235, + "nodeType": "ParameterList", + "parameters": [], + "src": "2632:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13259, + "nodeType": "FunctionDefinition", + "src": "2714:120:5", + "body": { + "id": 13258, + "nodeType": "Block", + "src": "2758:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733829", + "id": 13253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2808:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + "value": "log(bytes8)" + }, + { + "id": 13254, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13247, + "src": "2823:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f84252e5b28e1a0064346c7cd13650e2dd6020728ca468281bb2a28b42654b3", + "typeString": "literal_string \"log(bytes8)\"" + }, + { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + ], + "expression": { + "id": 13251, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2784:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13252, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2784:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2784:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13250, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2768:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2768:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13257, + "nodeType": "ExpressionStatement", + "src": "2768:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes8", + "nameLocation": "2723:9:5", + "parameters": { + "id": 13248, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13247, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2740:2:5", + "nodeType": "VariableDeclaration", + "scope": 13259, + "src": "2733:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + }, + "typeName": { + "id": 13246, + "name": "bytes8", + "nodeType": "ElementaryTypeName", + "src": "2733:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes8", + "typeString": "bytes8" + } + }, + "visibility": "internal" + } + ], + "src": "2732:11:5" + }, + "returnParameters": { + "id": 13249, + "nodeType": "ParameterList", + "parameters": [], + "src": "2758:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13273, + "nodeType": "FunctionDefinition", + "src": "2840:120:5", + "body": { + "id": 13272, + "nodeType": "Block", + "src": "2884:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672862797465733929", + "id": 13267, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2934:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + "value": "log(bytes9)" + }, + { + "id": 13268, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13261, + "src": "2949:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90bd8cd0463fe91d31e59db57ee4cf8d778374c422b4b50e841266d9c2cc6667", + "typeString": "literal_string \"log(bytes9)\"" + }, + { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + ], + "expression": { + "id": 13265, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2910:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "2910:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2910:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13264, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "2894:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2894:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13271, + "nodeType": "ExpressionStatement", + "src": "2894:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes9", + "nameLocation": "2849:9:5", + "parameters": { + "id": 13262, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13261, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2866:2:5", + "nodeType": "VariableDeclaration", + "scope": 13273, + "src": "2859:9:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + }, + "typeName": { + "id": 13260, + "name": "bytes9", + "nodeType": "ElementaryTypeName", + "src": "2859:6:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes9", + "typeString": "bytes9" + } + }, + "visibility": "internal" + } + ], + "src": "2858:11:5" + }, + "returnParameters": { + "id": 13263, + "nodeType": "ParameterList", + "parameters": [], + "src": "2884:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13287, + "nodeType": "FunctionDefinition", + "src": "2966:123:5", + "body": { + "id": 13286, + "nodeType": "Block", + "src": "3012:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313029", + "id": 13281, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3062:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + "value": "log(bytes10)" + }, + { + "id": 13282, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13275, + "src": "3078:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_013d178bb749cf32d0f7243763667360eb91576261efe5ed9be72b4a2800fd66", + "typeString": "literal_string \"log(bytes10)\"" + }, + { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + ], + "expression": { + "id": 13279, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3038:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3038:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3038:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13278, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3022:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13284, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3022:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13285, + "nodeType": "ExpressionStatement", + "src": "3022:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes10", + "nameLocation": "2975:10:5", + "parameters": { + "id": 13276, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13275, + "mutability": "mutable", + "name": "p0", + "nameLocation": "2994:2:5", + "nodeType": "VariableDeclaration", + "scope": 13287, + "src": "2986:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + }, + "typeName": { + "id": 13274, + "name": "bytes10", + "nodeType": "ElementaryTypeName", + "src": "2986:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes10", + "typeString": "bytes10" + } + }, + "visibility": "internal" + } + ], + "src": "2985:12:5" + }, + "returnParameters": { + "id": 13277, + "nodeType": "ParameterList", + "parameters": [], + "src": "3012:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13301, + "nodeType": "FunctionDefinition", + "src": "3095:123:5", + "body": { + "id": 13300, + "nodeType": "Block", + "src": "3141:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313129", + "id": 13295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3191:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + "value": "log(bytes11)" + }, + { + "id": 13296, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13289, + "src": "3207:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_04004a2e5bef8ca2e7ffd661b519aec3d9c1b8d0aa1e11656aab73b2726922d9", + "typeString": "literal_string \"log(bytes11)\"" + }, + { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + ], + "expression": { + "id": 13293, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3167:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13294, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3167:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13297, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3167:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13292, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3151:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3151:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13299, + "nodeType": "ExpressionStatement", + "src": "3151:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes11", + "nameLocation": "3104:10:5", + "parameters": { + "id": 13290, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13289, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3123:2:5", + "nodeType": "VariableDeclaration", + "scope": 13301, + "src": "3115:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + }, + "typeName": { + "id": 13288, + "name": "bytes11", + "nodeType": "ElementaryTypeName", + "src": "3115:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes11", + "typeString": "bytes11" + } + }, + "visibility": "internal" + } + ], + "src": "3114:12:5" + }, + "returnParameters": { + "id": 13291, + "nodeType": "ParameterList", + "parameters": [], + "src": "3141:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13315, + "nodeType": "FunctionDefinition", + "src": "3224:123:5", + "body": { + "id": 13314, + "nodeType": "Block", + "src": "3270:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313229", + "id": 13309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3320:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + "value": "log(bytes12)" + }, + { + "id": 13310, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13303, + "src": "3336:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_86a06abd704b9e5bab2216d456863046355f2def5304d8276c140d0d454fddf2", + "typeString": "literal_string \"log(bytes12)\"" + }, + { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + ], + "expression": { + "id": 13307, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3296:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13308, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3296:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3296:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13306, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3280:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3280:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13313, + "nodeType": "ExpressionStatement", + "src": "3280:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes12", + "nameLocation": "3233:10:5", + "parameters": { + "id": 13304, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13303, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3252:2:5", + "nodeType": "VariableDeclaration", + "scope": 13315, + "src": "3244:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + }, + "typeName": { + "id": 13302, + "name": "bytes12", + "nodeType": "ElementaryTypeName", + "src": "3244:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes12", + "typeString": "bytes12" + } + }, + "visibility": "internal" + } + ], + "src": "3243:12:5" + }, + "returnParameters": { + "id": 13305, + "nodeType": "ParameterList", + "parameters": [], + "src": "3270:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13329, + "nodeType": "FunctionDefinition", + "src": "3353:123:5", + "body": { + "id": 13328, + "nodeType": "Block", + "src": "3399:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313329", + "id": 13323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3449:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + "value": "log(bytes13)" + }, + { + "id": 13324, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13317, + "src": "3465:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94529e34a43ac6de2c3a0df402eee6114eb0f2ad065baefde0230cd3cf90e2ec", + "typeString": "literal_string \"log(bytes13)\"" + }, + { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + ], + "expression": { + "id": 13321, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3425:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3425:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3425:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13320, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3409:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3409:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13327, + "nodeType": "ExpressionStatement", + "src": "3409:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes13", + "nameLocation": "3362:10:5", + "parameters": { + "id": 13318, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13317, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3381:2:5", + "nodeType": "VariableDeclaration", + "scope": 13329, + "src": "3373:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + }, + "typeName": { + "id": 13316, + "name": "bytes13", + "nodeType": "ElementaryTypeName", + "src": "3373:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes13", + "typeString": "bytes13" + } + }, + "visibility": "internal" + } + ], + "src": "3372:12:5" + }, + "returnParameters": { + "id": 13319, + "nodeType": "ParameterList", + "parameters": [], + "src": "3399:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13343, + "nodeType": "FunctionDefinition", + "src": "3482:123:5", + "body": { + "id": 13342, + "nodeType": "Block", + "src": "3528:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313429", + "id": 13337, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3578:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + "value": "log(bytes14)" + }, + { + "id": 13338, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13331, + "src": "3594:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9266f07faf32c88bbdb01ce418243acbc1c63e15d6e3afa16078186ba711f278", + "typeString": "literal_string \"log(bytes14)\"" + }, + { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + ], + "expression": { + "id": 13335, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3554:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13336, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3554:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3554:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13334, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3538:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3538:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13341, + "nodeType": "ExpressionStatement", + "src": "3538:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes14", + "nameLocation": "3491:10:5", + "parameters": { + "id": 13332, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13331, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3510:2:5", + "nodeType": "VariableDeclaration", + "scope": 13343, + "src": "3502:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + }, + "typeName": { + "id": 13330, + "name": "bytes14", + "nodeType": "ElementaryTypeName", + "src": "3502:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes14", + "typeString": "bytes14" + } + }, + "visibility": "internal" + } + ], + "src": "3501:12:5" + }, + "returnParameters": { + "id": 13333, + "nodeType": "ParameterList", + "parameters": [], + "src": "3528:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13357, + "nodeType": "FunctionDefinition", + "src": "3611:123:5", + "body": { + "id": 13356, + "nodeType": "Block", + "src": "3657:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313529", + "id": 13351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3707:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + "value": "log(bytes15)" + }, + { + "id": 13352, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13345, + "src": "3723:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_da9574e0bf3f23e09c3d85c9f5226065bb36281f2a5d78c7e38f6ffd58919606", + "typeString": "literal_string \"log(bytes15)\"" + }, + { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + ], + "expression": { + "id": 13349, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3683:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13350, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3683:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13353, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3683:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13348, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3667:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13354, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3667:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13355, + "nodeType": "ExpressionStatement", + "src": "3667:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes15", + "nameLocation": "3620:10:5", + "parameters": { + "id": 13346, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13345, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3639:2:5", + "nodeType": "VariableDeclaration", + "scope": 13357, + "src": "3631:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + }, + "typeName": { + "id": 13344, + "name": "bytes15", + "nodeType": "ElementaryTypeName", + "src": "3631:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes15", + "typeString": "bytes15" + } + }, + "visibility": "internal" + } + ], + "src": "3630:12:5" + }, + "returnParameters": { + "id": 13347, + "nodeType": "ParameterList", + "parameters": [], + "src": "3657:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13371, + "nodeType": "FunctionDefinition", + "src": "3740:123:5", + "body": { + "id": 13370, + "nodeType": "Block", + "src": "3786:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313629", + "id": 13365, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3836:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + "value": "log(bytes16)" + }, + { + "id": 13366, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13359, + "src": "3852:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665c61046af0adc4969f9d2f111b654775bd58f112b63e5ce7dfff29c000e9f3", + "typeString": "literal_string \"log(bytes16)\"" + }, + { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + ], + "expression": { + "id": 13363, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3812:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13364, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3812:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3812:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13362, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3796:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3796:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13369, + "nodeType": "ExpressionStatement", + "src": "3796:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes16", + "nameLocation": "3749:10:5", + "parameters": { + "id": 13360, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13359, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3768:2:5", + "nodeType": "VariableDeclaration", + "scope": 13371, + "src": "3760:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + }, + "typeName": { + "id": 13358, + "name": "bytes16", + "nodeType": "ElementaryTypeName", + "src": "3760:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes16", + "typeString": "bytes16" + } + }, + "visibility": "internal" + } + ], + "src": "3759:12:5" + }, + "returnParameters": { + "id": 13361, + "nodeType": "ParameterList", + "parameters": [], + "src": "3786:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13385, + "nodeType": "FunctionDefinition", + "src": "3869:123:5", + "body": { + "id": 13384, + "nodeType": "Block", + "src": "3915:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313729", + "id": 13379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3965:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + "value": "log(bytes17)" + }, + { + "id": 13380, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13373, + "src": "3981:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_339f673a0c008974259a0022c9b150cc5d1af8c58584412fe373d84bd08d4ea3", + "typeString": "literal_string \"log(bytes17)\"" + }, + { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + ], + "expression": { + "id": 13377, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3941:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "3941:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3941:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13376, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "3925:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3925:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13383, + "nodeType": "ExpressionStatement", + "src": "3925:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes17", + "nameLocation": "3878:10:5", + "parameters": { + "id": 13374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13373, + "mutability": "mutable", + "name": "p0", + "nameLocation": "3897:2:5", + "nodeType": "VariableDeclaration", + "scope": 13385, + "src": "3889:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + }, + "typeName": { + "id": 13372, + "name": "bytes17", + "nodeType": "ElementaryTypeName", + "src": "3889:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes17", + "typeString": "bytes17" + } + }, + "visibility": "internal" + } + ], + "src": "3888:12:5" + }, + "returnParameters": { + "id": 13375, + "nodeType": "ParameterList", + "parameters": [], + "src": "3915:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13399, + "nodeType": "FunctionDefinition", + "src": "3998:123:5", + "body": { + "id": 13398, + "nodeType": "Block", + "src": "4044:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313829", + "id": 13393, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4094:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + "value": "log(bytes18)" + }, + { + "id": 13394, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13387, + "src": "4110:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4d23d9af6458d5ddc7cb8128a2f36bf147c9db4fe277dfe0fe7be41def62116", + "typeString": "literal_string \"log(bytes18)\"" + }, + { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + ], + "expression": { + "id": 13391, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4070:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4070:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4070:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13390, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4054:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4054:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13397, + "nodeType": "ExpressionStatement", + "src": "4054:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes18", + "nameLocation": "4007:10:5", + "parameters": { + "id": 13388, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13387, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4026:2:5", + "nodeType": "VariableDeclaration", + "scope": 13399, + "src": "4018:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + }, + "typeName": { + "id": 13386, + "name": "bytes18", + "nodeType": "ElementaryTypeName", + "src": "4018:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes18", + "typeString": "bytes18" + } + }, + "visibility": "internal" + } + ], + "src": "4017:12:5" + }, + "returnParameters": { + "id": 13389, + "nodeType": "ParameterList", + "parameters": [], + "src": "4044:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13413, + "nodeType": "FunctionDefinition", + "src": "4127:123:5", + "body": { + "id": 13412, + "nodeType": "Block", + "src": "4173:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573313929", + "id": 13407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4223:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + "value": "log(bytes19)" + }, + { + "id": 13408, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13401, + "src": "4239:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e6b5a33524ca650028e2fad735b4ab50285bba37658119d2da303bee98aeada", + "typeString": "literal_string \"log(bytes19)\"" + }, + { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + ], + "expression": { + "id": 13405, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4199:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13406, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4199:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4199:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13404, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4183:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4183:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13411, + "nodeType": "ExpressionStatement", + "src": "4183:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes19", + "nameLocation": "4136:10:5", + "parameters": { + "id": 13402, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13401, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4155:2:5", + "nodeType": "VariableDeclaration", + "scope": 13413, + "src": "4147:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + }, + "typeName": { + "id": 13400, + "name": "bytes19", + "nodeType": "ElementaryTypeName", + "src": "4147:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes19", + "typeString": "bytes19" + } + }, + "visibility": "internal" + } + ], + "src": "4146:12:5" + }, + "returnParameters": { + "id": 13403, + "nodeType": "ParameterList", + "parameters": [], + "src": "4173:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13427, + "nodeType": "FunctionDefinition", + "src": "4256:123:5", + "body": { + "id": 13426, + "nodeType": "Block", + "src": "4302:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323029", + "id": 13421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4352:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + "value": "log(bytes20)" + }, + { + "id": 13422, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13415, + "src": "4368:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5188e3e9b3f117a223e2e428d0e13d089f3a53913e479000b94b85266ecf8231", + "typeString": "literal_string \"log(bytes20)\"" + }, + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "expression": { + "id": 13419, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4328:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4328:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13423, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4328:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13418, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4312:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4312:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13425, + "nodeType": "ExpressionStatement", + "src": "4312:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes20", + "nameLocation": "4265:10:5", + "parameters": { + "id": 13416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13415, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4284:2:5", + "nodeType": "VariableDeclaration", + "scope": 13427, + "src": "4276:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + }, + "typeName": { + "id": 13414, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "4276:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + }, + "visibility": "internal" + } + ], + "src": "4275:12:5" + }, + "returnParameters": { + "id": 13417, + "nodeType": "ParameterList", + "parameters": [], + "src": "4302:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13441, + "nodeType": "FunctionDefinition", + "src": "4385:123:5", + "body": { + "id": 13440, + "nodeType": "Block", + "src": "4431:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323129", + "id": 13435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4481:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + "value": "log(bytes21)" + }, + { + "id": 13436, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13429, + "src": "4497:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e9da35608192a6b38ad5ef62cf738886973b011b8cdb7e81cdd51b4c3dfe8ad7", + "typeString": "literal_string \"log(bytes21)\"" + }, + { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + ], + "expression": { + "id": 13433, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4457:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4457:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4457:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13432, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4441:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4441:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13439, + "nodeType": "ExpressionStatement", + "src": "4441:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes21", + "nameLocation": "4394:10:5", + "parameters": { + "id": 13430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13429, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4413:2:5", + "nodeType": "VariableDeclaration", + "scope": 13441, + "src": "4405:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + }, + "typeName": { + "id": 13428, + "name": "bytes21", + "nodeType": "ElementaryTypeName", + "src": "4405:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes21", + "typeString": "bytes21" + } + }, + "visibility": "internal" + } + ], + "src": "4404:12:5" + }, + "returnParameters": { + "id": 13431, + "nodeType": "ParameterList", + "parameters": [], + "src": "4431:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13455, + "nodeType": "FunctionDefinition", + "src": "4514:123:5", + "body": { + "id": 13454, + "nodeType": "Block", + "src": "4560:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323229", + "id": 13449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4610:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + "value": "log(bytes22)" + }, + { + "id": 13450, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13443, + "src": "4626:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d5fae89c25bed6f12b105f52db0a0ff6f5c8313613e12eccd3059bb7f7ea6575", + "typeString": "literal_string \"log(bytes22)\"" + }, + { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + ], + "expression": { + "id": 13447, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4586:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4586:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4586:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13446, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4570:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4570:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13453, + "nodeType": "ExpressionStatement", + "src": "4570:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes22", + "nameLocation": "4523:10:5", + "parameters": { + "id": 13444, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13443, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4542:2:5", + "nodeType": "VariableDeclaration", + "scope": 13455, + "src": "4534:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + }, + "typeName": { + "id": 13442, + "name": "bytes22", + "nodeType": "ElementaryTypeName", + "src": "4534:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes22", + "typeString": "bytes22" + } + }, + "visibility": "internal" + } + ], + "src": "4533:12:5" + }, + "returnParameters": { + "id": 13445, + "nodeType": "ParameterList", + "parameters": [], + "src": "4560:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13469, + "nodeType": "FunctionDefinition", + "src": "4643:123:5", + "body": { + "id": 13468, + "nodeType": "Block", + "src": "4689:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323329", + "id": 13463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4739:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + "value": "log(bytes23)" + }, + { + "id": 13464, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13457, + "src": "4755:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aba1cf0dcd316c862bc06d4cf532375fed11c1e0897ba81a04ee0b22d3f14061", + "typeString": "literal_string \"log(bytes23)\"" + }, + { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + ], + "expression": { + "id": 13461, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4715:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4715:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4715:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13460, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4699:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4699:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13467, + "nodeType": "ExpressionStatement", + "src": "4699:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes23", + "nameLocation": "4652:10:5", + "parameters": { + "id": 13458, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13457, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4671:2:5", + "nodeType": "VariableDeclaration", + "scope": 13469, + "src": "4663:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + }, + "typeName": { + "id": 13456, + "name": "bytes23", + "nodeType": "ElementaryTypeName", + "src": "4663:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes23", + "typeString": "bytes23" + } + }, + "visibility": "internal" + } + ], + "src": "4662:12:5" + }, + "returnParameters": { + "id": 13459, + "nodeType": "ParameterList", + "parameters": [], + "src": "4689:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13483, + "nodeType": "FunctionDefinition", + "src": "4772:123:5", + "body": { + "id": 13482, + "nodeType": "Block", + "src": "4818:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323429", + "id": 13477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4868:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + "value": "log(bytes24)" + }, + { + "id": 13478, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13471, + "src": "4884:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f1b35b3488a5452bceb48624d6ba2a791e58f0e9c0f4b86b8f51186ec7a7edf4", + "typeString": "literal_string \"log(bytes24)\"" + }, + { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + ], + "expression": { + "id": 13475, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4844:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13476, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4844:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4844:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13474, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4828:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4828:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13481, + "nodeType": "ExpressionStatement", + "src": "4828:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes24", + "nameLocation": "4781:10:5", + "parameters": { + "id": 13472, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13471, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4800:2:5", + "nodeType": "VariableDeclaration", + "scope": 13483, + "src": "4792:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + }, + "typeName": { + "id": 13470, + "name": "bytes24", + "nodeType": "ElementaryTypeName", + "src": "4792:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes24", + "typeString": "bytes24" + } + }, + "visibility": "internal" + } + ], + "src": "4791:12:5" + }, + "returnParameters": { + "id": 13473, + "nodeType": "ParameterList", + "parameters": [], + "src": "4818:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13497, + "nodeType": "FunctionDefinition", + "src": "4901:123:5", + "body": { + "id": 13496, + "nodeType": "Block", + "src": "4947:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323529", + "id": 13491, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4997:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + "value": "log(bytes25)" + }, + { + "id": 13492, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13485, + "src": "5013:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0b84bc580db9be1295ee23dff6122da1f70381c83abf9a74953cca11238eda25", + "typeString": "literal_string \"log(bytes25)\"" + }, + { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + ], + "expression": { + "id": 13489, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4973:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13490, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "4973:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4973:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13488, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "4957:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13494, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4957:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13495, + "nodeType": "ExpressionStatement", + "src": "4957:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes25", + "nameLocation": "4910:10:5", + "parameters": { + "id": 13486, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13485, + "mutability": "mutable", + "name": "p0", + "nameLocation": "4929:2:5", + "nodeType": "VariableDeclaration", + "scope": 13497, + "src": "4921:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + }, + "typeName": { + "id": 13484, + "name": "bytes25", + "nodeType": "ElementaryTypeName", + "src": "4921:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes25", + "typeString": "bytes25" + } + }, + "visibility": "internal" + } + ], + "src": "4920:12:5" + }, + "returnParameters": { + "id": 13487, + "nodeType": "ParameterList", + "parameters": [], + "src": "4947:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13511, + "nodeType": "FunctionDefinition", + "src": "5030:123:5", + "body": { + "id": 13510, + "nodeType": "Block", + "src": "5076:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323629", + "id": 13505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5126:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + "value": "log(bytes26)" + }, + { + "id": 13506, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13499, + "src": "5142:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f8b149f18dc341f1a56e26c6c24a5233eec3bbb2ab017e9e86e663aae743965b", + "typeString": "literal_string \"log(bytes26)\"" + }, + { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + ], + "expression": { + "id": 13503, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5102:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13504, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5102:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5102:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13502, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5086:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5086:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13509, + "nodeType": "ExpressionStatement", + "src": "5086:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes26", + "nameLocation": "5039:10:5", + "parameters": { + "id": 13500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13499, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5058:2:5", + "nodeType": "VariableDeclaration", + "scope": 13511, + "src": "5050:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + }, + "typeName": { + "id": 13498, + "name": "bytes26", + "nodeType": "ElementaryTypeName", + "src": "5050:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes26", + "typeString": "bytes26" + } + }, + "visibility": "internal" + } + ], + "src": "5049:12:5" + }, + "returnParameters": { + "id": 13501, + "nodeType": "ParameterList", + "parameters": [], + "src": "5076:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13525, + "nodeType": "FunctionDefinition", + "src": "5159:123:5", + "body": { + "id": 13524, + "nodeType": "Block", + "src": "5205:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323729", + "id": 13519, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5255:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + "value": "log(bytes27)" + }, + { + "id": 13520, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13513, + "src": "5271:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a3757dda92e8e238aa23ff7f6f62e31074f6acccca8986ec1286b5a835236b6", + "typeString": "literal_string \"log(bytes27)\"" + }, + { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + ], + "expression": { + "id": 13517, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5231:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5231:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5231:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13516, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5215:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5215:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13523, + "nodeType": "ExpressionStatement", + "src": "5215:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes27", + "nameLocation": "5168:10:5", + "parameters": { + "id": 13514, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13513, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5187:2:5", + "nodeType": "VariableDeclaration", + "scope": 13525, + "src": "5179:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + }, + "typeName": { + "id": 13512, + "name": "bytes27", + "nodeType": "ElementaryTypeName", + "src": "5179:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes27", + "typeString": "bytes27" + } + }, + "visibility": "internal" + } + ], + "src": "5178:12:5" + }, + "returnParameters": { + "id": 13515, + "nodeType": "ParameterList", + "parameters": [], + "src": "5205:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13539, + "nodeType": "FunctionDefinition", + "src": "5288:123:5", + "body": { + "id": 13538, + "nodeType": "Block", + "src": "5334:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323829", + "id": 13533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5384:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + "value": "log(bytes28)" + }, + { + "id": 13534, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13527, + "src": "5400:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c82aeaee74a6ddec4ccd5cfe60e816752c02c70838f0908bd4a6e82866b3a042", + "typeString": "literal_string \"log(bytes28)\"" + }, + { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + ], + "expression": { + "id": 13531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5360:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5360:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5360:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13530, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5344:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5344:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13537, + "nodeType": "ExpressionStatement", + "src": "5344:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes28", + "nameLocation": "5297:10:5", + "parameters": { + "id": 13528, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13527, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5316:2:5", + "nodeType": "VariableDeclaration", + "scope": 13539, + "src": "5308:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + }, + "typeName": { + "id": 13526, + "name": "bytes28", + "nodeType": "ElementaryTypeName", + "src": "5308:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes28", + "typeString": "bytes28" + } + }, + "visibility": "internal" + } + ], + "src": "5307:12:5" + }, + "returnParameters": { + "id": 13529, + "nodeType": "ParameterList", + "parameters": [], + "src": "5334:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13553, + "nodeType": "FunctionDefinition", + "src": "5417:123:5", + "body": { + "id": 13552, + "nodeType": "Block", + "src": "5463:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573323929", + "id": 13547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + "value": "log(bytes29)" + }, + { + "id": 13548, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13541, + "src": "5529:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b69c3d5f782ef1bdb62d5bb42d4987f16799030ba447bb153d465bd3a3a5667", + "typeString": "literal_string \"log(bytes29)\"" + }, + { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + ], + "expression": { + "id": 13545, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5489:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5489:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5489:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13544, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5473:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5473:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13551, + "nodeType": "ExpressionStatement", + "src": "5473:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes29", + "nameLocation": "5426:10:5", + "parameters": { + "id": 13542, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13541, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5445:2:5", + "nodeType": "VariableDeclaration", + "scope": 13553, + "src": "5437:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + }, + "typeName": { + "id": 13540, + "name": "bytes29", + "nodeType": "ElementaryTypeName", + "src": "5437:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes29", + "typeString": "bytes29" + } + }, + "visibility": "internal" + } + ], + "src": "5436:12:5" + }, + "returnParameters": { + "id": 13543, + "nodeType": "ParameterList", + "parameters": [], + "src": "5463:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13567, + "nodeType": "FunctionDefinition", + "src": "5546:123:5", + "body": { + "id": 13566, + "nodeType": "Block", + "src": "5592:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333029", + "id": 13561, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5642:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + "value": "log(bytes30)" + }, + { + "id": 13562, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13555, + "src": "5658:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ee12c4edbd73d98174a6bf3454562c4874f59cb381176b662ca65f625f97d6ad", + "typeString": "literal_string \"log(bytes30)\"" + }, + { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + ], + "expression": { + "id": 13559, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5618:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13560, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5618:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5618:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13558, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5602:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5602:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13565, + "nodeType": "ExpressionStatement", + "src": "5602:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes30", + "nameLocation": "5555:10:5", + "parameters": { + "id": 13556, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13555, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5574:2:5", + "nodeType": "VariableDeclaration", + "scope": 13567, + "src": "5566:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + }, + "typeName": { + "id": 13554, + "name": "bytes30", + "nodeType": "ElementaryTypeName", + "src": "5566:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes30", + "typeString": "bytes30" + } + }, + "visibility": "internal" + } + ], + "src": "5565:12:5" + }, + "returnParameters": { + "id": 13557, + "nodeType": "ParameterList", + "parameters": [], + "src": "5592:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13581, + "nodeType": "FunctionDefinition", + "src": "5675:123:5", + "body": { + "id": 13580, + "nodeType": "Block", + "src": "5721:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333129", + "id": 13575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5771:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + "value": "log(bytes31)" + }, + { + "id": 13576, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13569, + "src": "5787:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c2854d92a0707e582e2710f9c9d3f148fdcf7e7da3b4270c2cfa3e223a2c50ce", + "typeString": "literal_string \"log(bytes31)\"" + }, + { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + ], + "expression": { + "id": 13573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5747:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5747:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5747:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13572, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5731:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5731:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13579, + "nodeType": "ExpressionStatement", + "src": "5731:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes31", + "nameLocation": "5684:10:5", + "parameters": { + "id": 13570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13569, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5703:2:5", + "nodeType": "VariableDeclaration", + "scope": 13581, + "src": "5695:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + }, + "typeName": { + "id": 13568, + "name": "bytes31", + "nodeType": "ElementaryTypeName", + "src": "5695:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes31", + "typeString": "bytes31" + } + }, + "visibility": "internal" + } + ], + "src": "5694:12:5" + }, + "returnParameters": { + "id": 13571, + "nodeType": "ParameterList", + "parameters": [], + "src": "5721:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13595, + "nodeType": "FunctionDefinition", + "src": "5804:123:5", + "body": { + "id": 13594, + "nodeType": "Block", + "src": "5850:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286279746573333229", + "id": 13589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5900:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + "value": "log(bytes32)" + }, + { + "id": 13590, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13583, + "src": "5916:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_27b7cf8513ac6b65cae720183e1e60e67f8a9d92c01286c19d51d4e30aa269da", + "typeString": "literal_string \"log(bytes32)\"" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 13587, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5876:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13588, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5876:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5876:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13586, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5860:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5860:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13593, + "nodeType": "ExpressionStatement", + "src": "5860:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "logBytes32", + "nameLocation": "5813:10:5", + "parameters": { + "id": 13584, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13583, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5832:2:5", + "nodeType": "VariableDeclaration", + "scope": 13595, + "src": "5824:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 13582, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "5824:7:5", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "5823:12:5" + }, + "returnParameters": { + "id": 13585, + "nodeType": "ParameterList", + "parameters": [], + "src": "5850:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13609, + "nodeType": "FunctionDefinition", + "src": "5933:116:5", + "body": { + "id": 13608, + "nodeType": "Block", + "src": "5972:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e7432353629", + "id": 13603, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6022:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + "value": "log(uint256)" + }, + { + "id": 13604, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13597, + "src": "6038:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f82c50f1848136e6c140b186ea0c768b7deda5efffe42c25e96336a90b26c744", + "typeString": "literal_string \"log(uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13601, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5998:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13602, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "5998:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5998:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13600, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "5982:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13606, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5982:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13607, + "nodeType": "ExpressionStatement", + "src": "5982:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "5942:3:5", + "parameters": { + "id": 13598, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13597, + "mutability": "mutable", + "name": "p0", + "nameLocation": "5954:2:5", + "nodeType": "VariableDeclaration", + "scope": 13609, + "src": "5946:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13596, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5946:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5945:12:5" + }, + "returnParameters": { + "id": 13599, + "nodeType": "ParameterList", + "parameters": [], + "src": "5972:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13623, + "nodeType": "FunctionDefinition", + "src": "6055:121:5", + "body": { + "id": 13622, + "nodeType": "Block", + "src": "6100:76:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e6729", + "id": 13617, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6150:13:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + "value": "log(string)" + }, + { + "id": 13618, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13611, + "src": "6165:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "typeString": "literal_string \"log(string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13615, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6126:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6126:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6126:42:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13614, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6110:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6110:59:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13621, + "nodeType": "ExpressionStatement", + "src": "6110:59:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6064:3:5", + "parameters": { + "id": 13612, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13611, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6082:2:5", + "nodeType": "VariableDeclaration", + "scope": 13623, + "src": "6068:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13610, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6068:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6067:18:5" + }, + "returnParameters": { + "id": 13613, + "nodeType": "ParameterList", + "parameters": [], + "src": "6100:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13637, + "nodeType": "FunctionDefinition", + "src": "6182:110:5", + "body": { + "id": 13636, + "nodeType": "Block", + "src": "6218:74:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c29", + "id": 13631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6268:11:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + "value": "log(bool)" + }, + { + "id": 13632, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13625, + "src": "6281:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32458eed3feca62a69292a55ca8a755ae4e6cdc57a38d15c298330064467fdd7", + "typeString": "literal_string \"log(bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13629, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6244:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6244:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6244:40:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13628, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6228:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6228:57:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13635, + "nodeType": "ExpressionStatement", + "src": "6228:57:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6191:3:5", + "parameters": { + "id": 13626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13625, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6200:2:5", + "nodeType": "VariableDeclaration", + "scope": 13637, + "src": "6195:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6195:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6194:9:5" + }, + "returnParameters": { + "id": 13627, + "nodeType": "ParameterList", + "parameters": [], + "src": "6218:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13651, + "nodeType": "FunctionDefinition", + "src": "6298:116:5", + "body": { + "id": 13650, + "nodeType": "Block", + "src": "6337:77:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f67286164647265737329", + "id": 13645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6387:14:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + "value": "log(address)" + }, + { + "id": 13646, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13639, + "src": "6403:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c2ecbc2212ac38c2f9ec89aa5fcef7f532a5db24dbf7cad1f48bc82843b7428", + "typeString": "literal_string \"log(address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13643, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6363:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6363:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6363:43:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13642, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6347:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6347:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13649, + "nodeType": "ExpressionStatement", + "src": "6347:60:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6307:3:5", + "parameters": { + "id": 13640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13639, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6319:2:5", + "nodeType": "VariableDeclaration", + "scope": 13651, + "src": "6311:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13638, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6311:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6310:12:5" + }, + "returnParameters": { + "id": 13641, + "nodeType": "ParameterList", + "parameters": [], + "src": "6337:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13668, + "nodeType": "FunctionDefinition", + "src": "6420:140:5", + "body": { + "id": 13667, + "nodeType": "Block", + "src": "6471:89:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e7432353629", + "id": 13661, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6521:22:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f666715aa6b8e8ce32bd39173f51eea0643fdd246a826c4756c2f168022b6eb5", + "typeString": "literal_string \"log(uint256,uint256)\"" + }, + "value": "log(uint256,uint256)" + }, + { + "id": 13662, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13653, + "src": "6545:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13663, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13655, + "src": "6549:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f666715aa6b8e8ce32bd39173f51eea0643fdd246a826c4756c2f168022b6eb5", + "typeString": "literal_string \"log(uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6497:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6497:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6497:55:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13658, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6481:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13665, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6481:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13666, + "nodeType": "ExpressionStatement", + "src": "6481:72:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6429:3:5", + "parameters": { + "id": 13656, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13653, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6441:2:5", + "nodeType": "VariableDeclaration", + "scope": 13668, + "src": "6433:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13652, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6433:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13655, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6453:2:5", + "nodeType": "VariableDeclaration", + "scope": 13668, + "src": "6445:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13654, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6445:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6432:24:5" + }, + "returnParameters": { + "id": 13657, + "nodeType": "ParameterList", + "parameters": [], + "src": "6471:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13685, + "nodeType": "FunctionDefinition", + "src": "6566:145:5", + "body": { + "id": 13684, + "nodeType": "Block", + "src": "6623:88:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e6729", + "id": 13678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6673:21:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_643fd0df4c7dfb004c6169012c8aec390bd7246941d7fe467022f10f2da987c3", + "typeString": "literal_string \"log(uint256,string)\"" + }, + "value": "log(uint256,string)" + }, + { + "id": 13679, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13670, + "src": "6696:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13680, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13672, + "src": "6700:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_643fd0df4c7dfb004c6169012c8aec390bd7246941d7fe467022f10f2da987c3", + "typeString": "literal_string \"log(uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13676, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6649:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6649:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13681, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6649:54:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13675, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6633:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6633:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13683, + "nodeType": "ExpressionStatement", + "src": "6633:71:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6575:3:5", + "parameters": { + "id": 13673, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13670, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6587:2:5", + "nodeType": "VariableDeclaration", + "scope": 13685, + "src": "6579:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13669, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6579:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13672, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6605:2:5", + "nodeType": "VariableDeclaration", + "scope": 13685, + "src": "6591:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13671, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6591:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6578:30:5" + }, + "returnParameters": { + "id": 13674, + "nodeType": "ParameterList", + "parameters": [], + "src": "6623:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13702, + "nodeType": "FunctionDefinition", + "src": "6717:134:5", + "body": { + "id": 13701, + "nodeType": "Block", + "src": "6765:86:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c29", + "id": 13695, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6815:19:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c9d7eb3a75db315653a5c0996fcea52a2b2692643ce8ace4d8b12bb9da6c1f2", + "typeString": "literal_string \"log(uint256,bool)\"" + }, + "value": "log(uint256,bool)" + }, + { + "id": 13696, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13687, + "src": "6836:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13697, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13689, + "src": "6840:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c9d7eb3a75db315653a5c0996fcea52a2b2692643ce8ace4d8b12bb9da6c1f2", + "typeString": "literal_string \"log(uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13693, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6791:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6791:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6791:52:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13692, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6775:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6775:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13700, + "nodeType": "ExpressionStatement", + "src": "6775:69:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6726:3:5", + "parameters": { + "id": 13690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13687, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6738:2:5", + "nodeType": "VariableDeclaration", + "scope": 13702, + "src": "6730:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13686, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6730:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13689, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6747:2:5", + "nodeType": "VariableDeclaration", + "scope": 13702, + "src": "6742:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13688, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6742:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6729:21:5" + }, + "returnParameters": { + "id": 13691, + "nodeType": "ParameterList", + "parameters": [], + "src": "6765:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13719, + "nodeType": "FunctionDefinition", + "src": "6857:140:5", + "body": { + "id": 13718, + "nodeType": "Block", + "src": "6908:89:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c6164647265737329", + "id": 13712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6958:22:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_69276c86d20522c49707664308d424b84905ef92219f3146bcaacedc72eaed27", + "typeString": "literal_string \"log(uint256,address)\"" + }, + "value": "log(uint256,address)" + }, + { + "id": 13713, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13704, + "src": "6982:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13714, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13706, + "src": "6986:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_69276c86d20522c49707664308d424b84905ef92219f3146bcaacedc72eaed27", + "typeString": "literal_string \"log(uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13710, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "6934:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "6934:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6934:55:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13709, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "6918:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13716, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6918:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13717, + "nodeType": "ExpressionStatement", + "src": "6918:72:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "6866:3:5", + "parameters": { + "id": 13707, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13704, + "mutability": "mutable", + "name": "p0", + "nameLocation": "6878:2:5", + "nodeType": "VariableDeclaration", + "scope": 13719, + "src": "6870:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13703, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6870:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13706, + "mutability": "mutable", + "name": "p1", + "nameLocation": "6890:2:5", + "nodeType": "VariableDeclaration", + "scope": 13719, + "src": "6882:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13705, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6882:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6869:24:5" + }, + "returnParameters": { + "id": 13708, + "nodeType": "ParameterList", + "parameters": [], + "src": "6908:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13736, + "nodeType": "FunctionDefinition", + "src": "7003:145:5", + "body": { + "id": 13735, + "nodeType": "Block", + "src": "7060:88:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e7432353629", + "id": 13729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7110:21:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b60e72ccf6d57ab53eb84d7e94a9545806ed7f93c4d5673f11a64f03471e584e", + "typeString": "literal_string \"log(string,uint256)\"" + }, + "value": "log(string,uint256)" + }, + { + "id": 13730, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13721, + "src": "7133:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 13731, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13723, + "src": "7137:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b60e72ccf6d57ab53eb84d7e94a9545806ed7f93c4d5673f11a64f03471e584e", + "typeString": "literal_string \"log(string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7086:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7086:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7086:54:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13726, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7070:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7070:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13734, + "nodeType": "ExpressionStatement", + "src": "7070:71:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7012:3:5", + "parameters": { + "id": 13724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13721, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7030:2:5", + "nodeType": "VariableDeclaration", + "scope": 13736, + "src": "7016:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13720, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7016:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13723, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7042:2:5", + "nodeType": "VariableDeclaration", + "scope": 13736, + "src": "7034:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13722, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7034:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7015:30:5" + }, + "returnParameters": { + "id": 13725, + "nodeType": "ParameterList", + "parameters": [], + "src": "7060:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13753, + "nodeType": "FunctionDefinition", + "src": "7154:150:5", + "body": { + "id": 13752, + "nodeType": "Block", + "src": "7217:87:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e6729", + "id": 13746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7267:20:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + "value": "log(string,string)" + }, + { + "id": 13747, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13738, + "src": "7289:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 13748, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13740, + "src": "7293:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4b5c4277d556d03fbf5ee534fba41dc13982b44f2fa82f1d48fdd8b5b5b692ac", + "typeString": "literal_string \"log(string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13744, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7243:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13745, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7243:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13749, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7243:53:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13743, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7227:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13750, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7227:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13751, + "nodeType": "ExpressionStatement", + "src": "7227:70:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7163:3:5", + "parameters": { + "id": 13741, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13738, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7181:2:5", + "nodeType": "VariableDeclaration", + "scope": 13753, + "src": "7167:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13737, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7167:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13740, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7199:2:5", + "nodeType": "VariableDeclaration", + "scope": 13753, + "src": "7185:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13739, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7185:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7166:36:5" + }, + "returnParameters": { + "id": 13742, + "nodeType": "ParameterList", + "parameters": [], + "src": "7217:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13770, + "nodeType": "FunctionDefinition", + "src": "7310:139:5", + "body": { + "id": 13769, + "nodeType": "Block", + "src": "7364:85:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c29", + "id": 13763, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7414:18:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + "value": "log(string,bool)" + }, + { + "id": 13764, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13755, + "src": "7434:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 13765, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13757, + "src": "7438:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3b556354c088fbb43886eb83c2a04bc7089663f964d22be308197a236f5b870", + "typeString": "literal_string \"log(string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13761, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7390:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13762, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7390:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7390:51:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13760, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7374:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7374:68:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13768, + "nodeType": "ExpressionStatement", + "src": "7374:68:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7319:3:5", + "parameters": { + "id": 13758, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13755, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7337:2:5", + "nodeType": "VariableDeclaration", + "scope": 13770, + "src": "7323:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13754, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7323:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13757, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7346:2:5", + "nodeType": "VariableDeclaration", + "scope": 13770, + "src": "7341:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13756, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7341:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7322:27:5" + }, + "returnParameters": { + "id": 13759, + "nodeType": "ParameterList", + "parameters": [], + "src": "7364:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13787, + "nodeType": "FunctionDefinition", + "src": "7455:145:5", + "body": { + "id": 13786, + "nodeType": "Block", + "src": "7512:88:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c6164647265737329", + "id": 13780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7562:21:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + "value": "log(string,address)" + }, + { + "id": 13781, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13772, + "src": "7585:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 13782, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13774, + "src": "7589:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_319af333460570a1937bf195dd33445c0d0951c59127da6f1f038b9fdce3fd72", + "typeString": "literal_string \"log(string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13778, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7538:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13779, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7538:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13783, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7538:54:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13777, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7522:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7522:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13785, + "nodeType": "ExpressionStatement", + "src": "7522:71:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7464:3:5", + "parameters": { + "id": 13775, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13772, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7482:2:5", + "nodeType": "VariableDeclaration", + "scope": 13787, + "src": "7468:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13771, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7468:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13774, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7494:2:5", + "nodeType": "VariableDeclaration", + "scope": 13787, + "src": "7486:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13773, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7486:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7467:30:5" + }, + "returnParameters": { + "id": 13776, + "nodeType": "ParameterList", + "parameters": [], + "src": "7512:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13804, + "nodeType": "FunctionDefinition", + "src": "7606:134:5", + "body": { + "id": 13803, + "nodeType": "Block", + "src": "7654:86:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e7432353629", + "id": 13797, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7704:19:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_399174d3d0c43cb9677bce4fa1b5541fc60a002cbf23e154f1abcbb5f02cf2d7", + "typeString": "literal_string \"log(bool,uint256)\"" + }, + "value": "log(bool,uint256)" + }, + { + "id": 13798, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13789, + "src": "7725:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 13799, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13791, + "src": "7729:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_399174d3d0c43cb9677bce4fa1b5541fc60a002cbf23e154f1abcbb5f02cf2d7", + "typeString": "literal_string \"log(bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13795, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7680:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7680:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7680:52:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13794, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7664:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7664:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13802, + "nodeType": "ExpressionStatement", + "src": "7664:69:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7615:3:5", + "parameters": { + "id": 13792, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13789, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7624:2:5", + "nodeType": "VariableDeclaration", + "scope": 13804, + "src": "7619:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13788, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7619:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13791, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7636:2:5", + "nodeType": "VariableDeclaration", + "scope": 13804, + "src": "7628:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7628:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7618:21:5" + }, + "returnParameters": { + "id": 13793, + "nodeType": "ParameterList", + "parameters": [], + "src": "7654:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13821, + "nodeType": "FunctionDefinition", + "src": "7746:139:5", + "body": { + "id": 13820, + "nodeType": "Block", + "src": "7800:85:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e6729", + "id": 13814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7850:18:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + "value": "log(bool,string)" + }, + { + "id": 13815, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13806, + "src": "7870:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 13816, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13808, + "src": "7874:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8feac5256a5b88d7ca0173065b796567ecbc9d75ec022fa0f044eb427f962b84", + "typeString": "literal_string \"log(bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13812, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7826:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13813, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7826:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7826:51:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13811, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7810:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7810:68:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13819, + "nodeType": "ExpressionStatement", + "src": "7810:68:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7755:3:5", + "parameters": { + "id": 13809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13806, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7764:2:5", + "nodeType": "VariableDeclaration", + "scope": 13821, + "src": "7759:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13805, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7759:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13808, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7782:2:5", + "nodeType": "VariableDeclaration", + "scope": 13821, + "src": "7768:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13807, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7768:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7758:27:5" + }, + "returnParameters": { + "id": 13810, + "nodeType": "ParameterList", + "parameters": [], + "src": "7800:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13838, + "nodeType": "FunctionDefinition", + "src": "7891:128:5", + "body": { + "id": 13837, + "nodeType": "Block", + "src": "7936:83:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c29", + "id": 13831, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7986:16:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + "value": "log(bool,bool)" + }, + { + "id": 13832, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13823, + "src": "8004:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 13833, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13825, + "src": "8008:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2a110e83227fbe26ff7524076f2091da3e9aa01d70b93677da53b41d22f4fb15", + "typeString": "literal_string \"log(bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13829, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7962:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13830, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "7962:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7962:49:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13828, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "7946:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7946:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13836, + "nodeType": "ExpressionStatement", + "src": "7946:66:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "7900:3:5", + "parameters": { + "id": 13826, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13823, + "mutability": "mutable", + "name": "p0", + "nameLocation": "7909:2:5", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "7904:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13822, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7904:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13825, + "mutability": "mutable", + "name": "p1", + "nameLocation": "7918:2:5", + "nodeType": "VariableDeclaration", + "scope": 13838, + "src": "7913:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13824, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7913:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "7903:18:5" + }, + "returnParameters": { + "id": 13827, + "nodeType": "ParameterList", + "parameters": [], + "src": "7936:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13855, + "nodeType": "FunctionDefinition", + "src": "8025:134:5", + "body": { + "id": 13854, + "nodeType": "Block", + "src": "8073:86:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c6164647265737329", + "id": 13848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8123:19:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + "value": "log(bool,address)" + }, + { + "id": 13849, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13840, + "src": "8144:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 13850, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13842, + "src": "8148:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_853c4849443241e2249adafa4f69c8bb738b0f17c7a0a9d9997450cd71db4d55", + "typeString": "literal_string \"log(bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13846, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8099:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8099:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8099:52:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13845, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8083:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13852, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8083:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13853, + "nodeType": "ExpressionStatement", + "src": "8083:69:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8034:3:5", + "parameters": { + "id": 13843, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13840, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8043:2:5", + "nodeType": "VariableDeclaration", + "scope": 13855, + "src": "8038:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13839, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8038:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13842, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8055:2:5", + "nodeType": "VariableDeclaration", + "scope": 13855, + "src": "8047:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13841, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8047:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8037:21:5" + }, + "returnParameters": { + "id": 13844, + "nodeType": "ParameterList", + "parameters": [], + "src": "8073:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13872, + "nodeType": "FunctionDefinition", + "src": "8165:140:5", + "body": { + "id": 13871, + "nodeType": "Block", + "src": "8216:89:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e7432353629", + "id": 13865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8266:22:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8309e8a8b132619bdb25dffa9d595ba1ecb7835540fd62622dad33018c4a0d3e", + "typeString": "literal_string \"log(address,uint256)\"" + }, + "value": "log(address,uint256)" + }, + { + "id": 13866, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13857, + "src": "8290:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13867, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13859, + "src": "8294:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8309e8a8b132619bdb25dffa9d595ba1ecb7835540fd62622dad33018c4a0d3e", + "typeString": "literal_string \"log(address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13863, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8242:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13864, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8242:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8242:55:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13862, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8226:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8226:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13870, + "nodeType": "ExpressionStatement", + "src": "8226:72:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8174:3:5", + "parameters": { + "id": 13860, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13857, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8186:2:5", + "nodeType": "VariableDeclaration", + "scope": 13872, + "src": "8178:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13856, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8178:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13859, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8198:2:5", + "nodeType": "VariableDeclaration", + "scope": 13872, + "src": "8190:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13858, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8190:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8177:24:5" + }, + "returnParameters": { + "id": 13861, + "nodeType": "ParameterList", + "parameters": [], + "src": "8216:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13889, + "nodeType": "FunctionDefinition", + "src": "8311:145:5", + "body": { + "id": 13888, + "nodeType": "Block", + "src": "8368:88:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e6729", + "id": 13882, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8418:21:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + "value": "log(address,string)" + }, + { + "id": 13883, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13874, + "src": "8441:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13884, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13876, + "src": "8445:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_759f86bbdd0758679ecefbd32ea620068b2339dddd9e45ee0fa567ee6c81f0ab", + "typeString": "literal_string \"log(address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13880, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8394:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13881, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8394:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13885, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8394:54:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13879, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8378:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8378:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13887, + "nodeType": "ExpressionStatement", + "src": "8378:71:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8320:3:5", + "parameters": { + "id": 13877, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13874, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8332:2:5", + "nodeType": "VariableDeclaration", + "scope": 13889, + "src": "8324:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13873, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8324:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13876, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8350:2:5", + "nodeType": "VariableDeclaration", + "scope": 13889, + "src": "8336:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13875, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8336:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8323:30:5" + }, + "returnParameters": { + "id": 13878, + "nodeType": "ParameterList", + "parameters": [], + "src": "8368:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13906, + "nodeType": "FunctionDefinition", + "src": "8462:134:5", + "body": { + "id": 13905, + "nodeType": "Block", + "src": "8510:86:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c29", + "id": 13899, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8560:19:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + "value": "log(address,bool)" + }, + { + "id": 13900, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13891, + "src": "8581:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13901, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13893, + "src": "8585:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_75b605d31a3bf49c8d814696c7c66216d3a7e81348c450078f032e425592f72b", + "typeString": "literal_string \"log(address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13897, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8536:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8536:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8536:52:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13896, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8520:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8520:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13904, + "nodeType": "ExpressionStatement", + "src": "8520:69:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8471:3:5", + "parameters": { + "id": 13894, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13891, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8483:2:5", + "nodeType": "VariableDeclaration", + "scope": 13906, + "src": "8475:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13890, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8475:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13893, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8492:2:5", + "nodeType": "VariableDeclaration", + "scope": 13906, + "src": "8487:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13892, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8487:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8474:21:5" + }, + "returnParameters": { + "id": 13895, + "nodeType": "ParameterList", + "parameters": [], + "src": "8510:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13923, + "nodeType": "FunctionDefinition", + "src": "8602:140:5", + "body": { + "id": 13922, + "nodeType": "Block", + "src": "8653:89:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c6164647265737329", + "id": 13916, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8703:22:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + "value": "log(address,address)" + }, + { + "id": 13917, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13908, + "src": "8727:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 13918, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13910, + "src": "8731:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_daf0d4aa9a5679e832ac921da67b43572b4326ee2565442d3ed255b48cfb5161", + "typeString": "literal_string \"log(address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13914, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8679:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13915, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8679:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8679:55:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13913, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8663:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8663:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13921, + "nodeType": "ExpressionStatement", + "src": "8663:72:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8611:3:5", + "parameters": { + "id": 13911, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13908, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8623:2:5", + "nodeType": "VariableDeclaration", + "scope": 13923, + "src": "8615:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13907, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8615:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13910, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8635:2:5", + "nodeType": "VariableDeclaration", + "scope": 13923, + "src": "8627:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13909, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8627:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8614:24:5" + }, + "returnParameters": { + "id": 13912, + "nodeType": "ParameterList", + "parameters": [], + "src": "8653:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13943, + "nodeType": "FunctionDefinition", + "src": "8748:164:5", + "body": { + "id": 13942, + "nodeType": "Block", + "src": "8811:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e7432353629", + "id": 13935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8861:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1ed7a3c020c4f5939654147940a147a8e4e638fa1e8f5664b5efbd1e1f3c4a6", + "typeString": "literal_string \"log(uint256,uint256,uint256)\"" + }, + "value": "log(uint256,uint256,uint256)" + }, + { + "id": 13936, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13925, + "src": "8893:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13937, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13927, + "src": "8897:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13938, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13929, + "src": "8901:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d1ed7a3c020c4f5939654147940a147a8e4e638fa1e8f5664b5efbd1e1f3c4a6", + "typeString": "literal_string \"log(uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 13933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8837:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "8837:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8837:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13932, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8821:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8821:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13941, + "nodeType": "ExpressionStatement", + "src": "8821:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8757:3:5", + "parameters": { + "id": 13930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13925, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8769:2:5", + "nodeType": "VariableDeclaration", + "scope": 13943, + "src": "8761:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8761:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13927, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8781:2:5", + "nodeType": "VariableDeclaration", + "scope": 13943, + "src": "8773:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8773:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13929, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8793:2:5", + "nodeType": "VariableDeclaration", + "scope": 13943, + "src": "8785:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13928, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8785:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8760:36:5" + }, + "returnParameters": { + "id": 13931, + "nodeType": "ParameterList", + "parameters": [], + "src": "8811:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13963, + "nodeType": "FunctionDefinition", + "src": "8918:169:5", + "body": { + "id": 13962, + "nodeType": "Block", + "src": "8987:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e6729", + "id": 13955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9037:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_71d04af2c0d71f035017c73ec9440d8cef06157a84f0febe8ec74eca98138262", + "typeString": "literal_string \"log(uint256,uint256,string)\"" + }, + "value": "log(uint256,uint256,string)" + }, + { + "id": 13956, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13945, + "src": "9068:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13957, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13947, + "src": "9072:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13958, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13949, + "src": "9076:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_71d04af2c0d71f035017c73ec9440d8cef06157a84f0febe8ec74eca98138262", + "typeString": "literal_string \"log(uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 13953, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9013:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9013:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9013:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13952, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "8997:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8997:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13961, + "nodeType": "ExpressionStatement", + "src": "8997:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "8927:3:5", + "parameters": { + "id": 13950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13945, + "mutability": "mutable", + "name": "p0", + "nameLocation": "8939:2:5", + "nodeType": "VariableDeclaration", + "scope": 13963, + "src": "8931:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13944, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8931:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13947, + "mutability": "mutable", + "name": "p1", + "nameLocation": "8951:2:5", + "nodeType": "VariableDeclaration", + "scope": 13963, + "src": "8943:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8943:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13949, + "mutability": "mutable", + "name": "p2", + "nameLocation": "8969:2:5", + "nodeType": "VariableDeclaration", + "scope": 13963, + "src": "8955:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 13948, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8955:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8930:42:5" + }, + "returnParameters": { + "id": 13951, + "nodeType": "ParameterList", + "parameters": [], + "src": "8987:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 13983, + "nodeType": "FunctionDefinition", + "src": "9093:158:5", + "body": { + "id": 13982, + "nodeType": "Block", + "src": "9153:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c29", + "id": 13975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9203:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4766da72b632663e3b9911d02d6f30e0cf213f928bdb9f6fd840851875d9fce0", + "typeString": "literal_string \"log(uint256,uint256,bool)\"" + }, + "value": "log(uint256,uint256,bool)" + }, + { + "id": 13976, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13965, + "src": "9232:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13977, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13967, + "src": "9236:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13978, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13969, + "src": "9240:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4766da72b632663e3b9911d02d6f30e0cf213f928bdb9f6fd840851875d9fce0", + "typeString": "literal_string \"log(uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 13973, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9179:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9179:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9179:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13972, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "9163:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 13980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9163:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 13981, + "nodeType": "ExpressionStatement", + "src": "9163:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9102:3:5", + "parameters": { + "id": 13970, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13965, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9114:2:5", + "nodeType": "VariableDeclaration", + "scope": 13983, + "src": "9106:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13964, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9106:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13967, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9126:2:5", + "nodeType": "VariableDeclaration", + "scope": 13983, + "src": "9118:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13966, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9118:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13969, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9135:2:5", + "nodeType": "VariableDeclaration", + "scope": 13983, + "src": "9130:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 13968, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9130:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9105:33:5" + }, + "returnParameters": { + "id": 13971, + "nodeType": "ParameterList", + "parameters": [], + "src": "9153:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14003, + "nodeType": "FunctionDefinition", + "src": "9257:164:5", + "body": { + "id": 14002, + "nodeType": "Block", + "src": "9320:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c6164647265737329", + "id": 13995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9370:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c96b331e359852d9a7254105926ce8dfcc42dd4fce56a736cfb981b4c2984c1", + "typeString": "literal_string \"log(uint256,uint256,address)\"" + }, + "value": "log(uint256,uint256,address)" + }, + { + "id": 13996, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13985, + "src": "9402:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13997, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13987, + "src": "9406:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 13998, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13989, + "src": "9410:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5c96b331e359852d9a7254105926ce8dfcc42dd4fce56a736cfb981b4c2984c1", + "typeString": "literal_string \"log(uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 13993, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9346:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 13994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9346:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 13999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9346:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 13992, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "9330:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9330:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14001, + "nodeType": "ExpressionStatement", + "src": "9330:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9266:3:5", + "parameters": { + "id": 13990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 13985, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9278:2:5", + "nodeType": "VariableDeclaration", + "scope": 14003, + "src": "9270:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13984, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9270:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13987, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9290:2:5", + "nodeType": "VariableDeclaration", + "scope": 14003, + "src": "9282:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 13986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9282:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13989, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9302:2:5", + "nodeType": "VariableDeclaration", + "scope": 14003, + "src": "9294:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 13988, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9294:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9269:36:5" + }, + "returnParameters": { + "id": 13991, + "nodeType": "ParameterList", + "parameters": [], + "src": "9320:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14023, + "nodeType": "FunctionDefinition", + "src": "9427:169:5", + "body": { + "id": 14022, + "nodeType": "Block", + "src": "9496:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e7432353629", + "id": 14015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9546:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_37aa7d4c835edd965b1201d9c03f13272bd937d8e244ab84a153693e2f2f30c0", + "typeString": "literal_string \"log(uint256,string,uint256)\"" + }, + "value": "log(uint256,string,uint256)" + }, + { + "id": 14016, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14005, + "src": "9577:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14017, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14007, + "src": "9581:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14018, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14009, + "src": "9585:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_37aa7d4c835edd965b1201d9c03f13272bd937d8e244ab84a153693e2f2f30c0", + "typeString": "literal_string \"log(uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14013, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9522:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9522:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9522:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14012, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "9506:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9506:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14021, + "nodeType": "ExpressionStatement", + "src": "9506:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9436:3:5", + "parameters": { + "id": 14010, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14005, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9448:2:5", + "nodeType": "VariableDeclaration", + "scope": 14023, + "src": "9440:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14004, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9440:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14007, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9466:2:5", + "nodeType": "VariableDeclaration", + "scope": 14023, + "src": "9452:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14006, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9452:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14009, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9478:2:5", + "nodeType": "VariableDeclaration", + "scope": 14023, + "src": "9470:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14008, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9470:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9439:42:5" + }, + "returnParameters": { + "id": 14011, + "nodeType": "ParameterList", + "parameters": [], + "src": "9496:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14043, + "nodeType": "FunctionDefinition", + "src": "9602:174:5", + "body": { + "id": 14042, + "nodeType": "Block", + "src": "9677:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e6729", + "id": 14035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9727:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b115611f13262589f336fb650c9278bd1879123a635e6a638f94e6cbdb1c1b35", + "typeString": "literal_string \"log(uint256,string,string)\"" + }, + "value": "log(uint256,string,string)" + }, + { + "id": 14036, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14025, + "src": "9757:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14037, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14027, + "src": "9761:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14038, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14029, + "src": "9765:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b115611f13262589f336fb650c9278bd1879123a635e6a638f94e6cbdb1c1b35", + "typeString": "literal_string \"log(uint256,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14033, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9703:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9703:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9703:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14032, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "9687:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9687:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14041, + "nodeType": "ExpressionStatement", + "src": "9687:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9611:3:5", + "parameters": { + "id": 14030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14025, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9623:2:5", + "nodeType": "VariableDeclaration", + "scope": 14043, + "src": "9615:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14024, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9615:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14027, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9641:2:5", + "nodeType": "VariableDeclaration", + "scope": 14043, + "src": "9627:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14026, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9627:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14029, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9659:2:5", + "nodeType": "VariableDeclaration", + "scope": 14043, + "src": "9645:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14028, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9645:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9614:48:5" + }, + "returnParameters": { + "id": 14031, + "nodeType": "ParameterList", + "parameters": [], + "src": "9677:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14063, + "nodeType": "FunctionDefinition", + "src": "9782:163:5", + "body": { + "id": 14062, + "nodeType": "Block", + "src": "9848:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c29", + "id": 14055, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9898:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ceda75ad13e534e8b5089564c6a40ae80cd33aac3e77ef1f87a233c1d43067a", + "typeString": "literal_string \"log(uint256,string,bool)\"" + }, + "value": "log(uint256,string,bool)" + }, + { + "id": 14056, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14045, + "src": "9926:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14057, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14047, + "src": "9930:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14058, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14049, + "src": "9934:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4ceda75ad13e534e8b5089564c6a40ae80cd33aac3e77ef1f87a233c1d43067a", + "typeString": "literal_string \"log(uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14053, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "9874:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14054, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "9874:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9874:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14052, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "9858:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9858:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14061, + "nodeType": "ExpressionStatement", + "src": "9858:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9791:3:5", + "parameters": { + "id": 14050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14045, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9803:2:5", + "nodeType": "VariableDeclaration", + "scope": 14063, + "src": "9795:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14044, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9795:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14047, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9821:2:5", + "nodeType": "VariableDeclaration", + "scope": 14063, + "src": "9807:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14046, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9807:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14049, + "mutability": "mutable", + "name": "p2", + "nameLocation": "9830:2:5", + "nodeType": "VariableDeclaration", + "scope": 14063, + "src": "9825:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14048, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9825:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9794:39:5" + }, + "returnParameters": { + "id": 14051, + "nodeType": "ParameterList", + "parameters": [], + "src": "9848:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14083, + "nodeType": "FunctionDefinition", + "src": "9951:169:5", + "body": { + "id": 14082, + "nodeType": "Block", + "src": "10020:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c6164647265737329", + "id": 14075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10070:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7afac959002f7dcdccdf461a7e6db7810eebd7217c0b7c30905b3c7e89b561f2", + "typeString": "literal_string \"log(uint256,string,address)\"" + }, + "value": "log(uint256,string,address)" + }, + { + "id": 14076, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14065, + "src": "10101:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14077, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14067, + "src": "10105:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14078, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14069, + "src": "10109:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7afac959002f7dcdccdf461a7e6db7810eebd7217c0b7c30905b3c7e89b561f2", + "typeString": "literal_string \"log(uint256,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14073, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10046:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10046:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10046:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14072, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10030:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10030:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14081, + "nodeType": "ExpressionStatement", + "src": "10030:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "9960:3:5", + "parameters": { + "id": 14070, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14065, + "mutability": "mutable", + "name": "p0", + "nameLocation": "9972:2:5", + "nodeType": "VariableDeclaration", + "scope": 14083, + "src": "9964:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14064, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9964:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14067, + "mutability": "mutable", + "name": "p1", + "nameLocation": "9990:2:5", + "nodeType": "VariableDeclaration", + "scope": 14083, + "src": "9976:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14066, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9976:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14069, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10002:2:5", + "nodeType": "VariableDeclaration", + "scope": 14083, + "src": "9994:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14068, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9994:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9963:42:5" + }, + "returnParameters": { + "id": 14071, + "nodeType": "ParameterList", + "parameters": [], + "src": "10020:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14103, + "nodeType": "FunctionDefinition", + "src": "10126:158:5", + "body": { + "id": 14102, + "nodeType": "Block", + "src": "10186:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e7432353629", + "id": 14095, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10236:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_200980147f19b368809aab41084ebebcf1e19d47edd13f2d540a6327cec213d1", + "typeString": "literal_string \"log(uint256,bool,uint256)\"" + }, + "value": "log(uint256,bool,uint256)" + }, + { + "id": 14096, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14085, + "src": "10265:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14097, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14087, + "src": "10269:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14098, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14089, + "src": "10273:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_200980147f19b368809aab41084ebebcf1e19d47edd13f2d540a6327cec213d1", + "typeString": "literal_string \"log(uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14093, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10212:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14094, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10212:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10212:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14092, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10196:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10196:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14101, + "nodeType": "ExpressionStatement", + "src": "10196:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10135:3:5", + "parameters": { + "id": 14090, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14085, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10147:2:5", + "nodeType": "VariableDeclaration", + "scope": 14103, + "src": "10139:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14084, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10139:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14087, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10156:2:5", + "nodeType": "VariableDeclaration", + "scope": 14103, + "src": "10151:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14086, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10151:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14089, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10168:2:5", + "nodeType": "VariableDeclaration", + "scope": 14103, + "src": "10160:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14088, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10160:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10138:33:5" + }, + "returnParameters": { + "id": 14091, + "nodeType": "ParameterList", + "parameters": [], + "src": "10186:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14123, + "nodeType": "FunctionDefinition", + "src": "10290:163:5", + "body": { + "id": 14122, + "nodeType": "Block", + "src": "10356:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e6729", + "id": 14115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10406:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_85775021582c57b14e9e0b33e0f693439478099486817fe4214a503f559f37df", + "typeString": "literal_string \"log(uint256,bool,string)\"" + }, + "value": "log(uint256,bool,string)" + }, + { + "id": 14116, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14105, + "src": "10434:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14117, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14107, + "src": "10438:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14118, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14109, + "src": "10442:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_85775021582c57b14e9e0b33e0f693439478099486817fe4214a503f559f37df", + "typeString": "literal_string \"log(uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10382:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10382:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10382:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14112, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10366:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10366:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14121, + "nodeType": "ExpressionStatement", + "src": "10366:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10299:3:5", + "parameters": { + "id": 14110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14105, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10311:2:5", + "nodeType": "VariableDeclaration", + "scope": 14123, + "src": "10303:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14104, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10303:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14107, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10320:2:5", + "nodeType": "VariableDeclaration", + "scope": 14123, + "src": "10315:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14106, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10315:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14109, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10338:2:5", + "nodeType": "VariableDeclaration", + "scope": 14123, + "src": "10324:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14108, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10324:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10302:39:5" + }, + "returnParameters": { + "id": 14111, + "nodeType": "ParameterList", + "parameters": [], + "src": "10356:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14143, + "nodeType": "FunctionDefinition", + "src": "10459:152:5", + "body": { + "id": 14142, + "nodeType": "Block", + "src": "10516:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c29", + "id": 14135, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10566:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_207186500d54a80dae0e8fae760b583cb518c2c49967db59c8f7e5596879c0b6", + "typeString": "literal_string \"log(uint256,bool,bool)\"" + }, + "value": "log(uint256,bool,bool)" + }, + { + "id": 14136, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14125, + "src": "10592:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14137, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14127, + "src": "10596:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14138, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14129, + "src": "10600:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_207186500d54a80dae0e8fae760b583cb518c2c49967db59c8f7e5596879c0b6", + "typeString": "literal_string \"log(uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14133, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10542:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14134, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10542:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10542:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14132, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10526:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10526:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14141, + "nodeType": "ExpressionStatement", + "src": "10526:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10468:3:5", + "parameters": { + "id": 14130, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14125, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10480:2:5", + "nodeType": "VariableDeclaration", + "scope": 14143, + "src": "10472:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14124, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10472:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14127, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10489:2:5", + "nodeType": "VariableDeclaration", + "scope": 14143, + "src": "10484:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14126, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10484:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14129, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10498:2:5", + "nodeType": "VariableDeclaration", + "scope": 14143, + "src": "10493:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14128, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10493:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "10471:30:5" + }, + "returnParameters": { + "id": 14131, + "nodeType": "ParameterList", + "parameters": [], + "src": "10516:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14163, + "nodeType": "FunctionDefinition", + "src": "10617:158:5", + "body": { + "id": 14162, + "nodeType": "Block", + "src": "10677:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c6164647265737329", + "id": 14155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10727:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_35085f7b74fe0b67ab2d779d94b2a1efc14ce8d637e06ffda83ca305116f3c99", + "typeString": "literal_string \"log(uint256,bool,address)\"" + }, + "value": "log(uint256,bool,address)" + }, + { + "id": 14156, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14145, + "src": "10756:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14157, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14147, + "src": "10760:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14158, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14149, + "src": "10764:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_35085f7b74fe0b67ab2d779d94b2a1efc14ce8d637e06ffda83ca305116f3c99", + "typeString": "literal_string \"log(uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10703:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10703:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10703:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14152, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10687:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10687:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14161, + "nodeType": "ExpressionStatement", + "src": "10687:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10626:3:5", + "parameters": { + "id": 14150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14145, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10638:2:5", + "nodeType": "VariableDeclaration", + "scope": 14163, + "src": "10630:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14144, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10630:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14147, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10647:2:5", + "nodeType": "VariableDeclaration", + "scope": 14163, + "src": "10642:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14146, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "10642:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14149, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10659:2:5", + "nodeType": "VariableDeclaration", + "scope": 14163, + "src": "10651:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14148, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10651:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10629:33:5" + }, + "returnParameters": { + "id": 14151, + "nodeType": "ParameterList", + "parameters": [], + "src": "10677:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14183, + "nodeType": "FunctionDefinition", + "src": "10781:164:5", + "body": { + "id": 14182, + "nodeType": "Block", + "src": "10844:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e7432353629", + "id": 14175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10894:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5a9b5ed5e0cc67953f5b0a58c12e9694944af5a126321ab88870dec3bc05a9ae", + "typeString": "literal_string \"log(uint256,address,uint256)\"" + }, + "value": "log(uint256,address,uint256)" + }, + { + "id": 14176, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14165, + "src": "10926:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14177, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14167, + "src": "10930:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14178, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14169, + "src": "10934:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5a9b5ed5e0cc67953f5b0a58c12e9694944af5a126321ab88870dec3bc05a9ae", + "typeString": "literal_string \"log(uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14173, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "10870:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "10870:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10870:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14172, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "10854:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10854:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14181, + "nodeType": "ExpressionStatement", + "src": "10854:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10790:3:5", + "parameters": { + "id": 14170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14165, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10802:2:5", + "nodeType": "VariableDeclaration", + "scope": 14183, + "src": "10794:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14164, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10794:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14167, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10814:2:5", + "nodeType": "VariableDeclaration", + "scope": 14183, + "src": "10806:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14166, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10806:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14169, + "mutability": "mutable", + "name": "p2", + "nameLocation": "10826:2:5", + "nodeType": "VariableDeclaration", + "scope": 14183, + "src": "10818:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14168, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10818:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10793:36:5" + }, + "returnParameters": { + "id": 14171, + "nodeType": "ParameterList", + "parameters": [], + "src": "10844:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14203, + "nodeType": "FunctionDefinition", + "src": "10951:169:5", + "body": { + "id": 14202, + "nodeType": "Block", + "src": "11020:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e6729", + "id": 14195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11070:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_63cb41f9a63efe5dfacd3a2836bdef664d136fd6113f8e931c31a919af38935c", + "typeString": "literal_string \"log(uint256,address,string)\"" + }, + "value": "log(uint256,address,string)" + }, + { + "id": 14196, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14185, + "src": "11101:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14197, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14187, + "src": "11105:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14198, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14189, + "src": "11109:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_63cb41f9a63efe5dfacd3a2836bdef664d136fd6113f8e931c31a919af38935c", + "typeString": "literal_string \"log(uint256,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14193, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11046:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11046:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11046:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14192, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11030:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11030:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14201, + "nodeType": "ExpressionStatement", + "src": "11030:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "10960:3:5", + "parameters": { + "id": 14190, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14185, + "mutability": "mutable", + "name": "p0", + "nameLocation": "10972:2:5", + "nodeType": "VariableDeclaration", + "scope": 14203, + "src": "10964:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14184, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10964:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14187, + "mutability": "mutable", + "name": "p1", + "nameLocation": "10984:2:5", + "nodeType": "VariableDeclaration", + "scope": 14203, + "src": "10976:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14186, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10976:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14189, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11002:2:5", + "nodeType": "VariableDeclaration", + "scope": 14203, + "src": "10988:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14188, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10988:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10963:42:5" + }, + "returnParameters": { + "id": 14191, + "nodeType": "ParameterList", + "parameters": [], + "src": "11020:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14223, + "nodeType": "FunctionDefinition", + "src": "11126:158:5", + "body": { + "id": 14222, + "nodeType": "Block", + "src": "11186:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c29", + "id": 14215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11236:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9b6ec042c5598a780a5bfae5e9ea2c50c251da4c38db3a134b8857be618f0c5c", + "typeString": "literal_string \"log(uint256,address,bool)\"" + }, + "value": "log(uint256,address,bool)" + }, + { + "id": 14216, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14205, + "src": "11265:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14217, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14207, + "src": "11269:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14218, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14209, + "src": "11273:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9b6ec042c5598a780a5bfae5e9ea2c50c251da4c38db3a134b8857be618f0c5c", + "typeString": "literal_string \"log(uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14213, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11212:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11212:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14219, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11212:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14212, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11196:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14220, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11196:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14221, + "nodeType": "ExpressionStatement", + "src": "11196:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11135:3:5", + "parameters": { + "id": 14210, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14205, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11147:2:5", + "nodeType": "VariableDeclaration", + "scope": 14223, + "src": "11139:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14204, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11139:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14207, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11159:2:5", + "nodeType": "VariableDeclaration", + "scope": 14223, + "src": "11151:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14206, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11151:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14209, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11168:2:5", + "nodeType": "VariableDeclaration", + "scope": 14223, + "src": "11163:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14208, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11163:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11138:33:5" + }, + "returnParameters": { + "id": 14211, + "nodeType": "ParameterList", + "parameters": [], + "src": "11186:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14243, + "nodeType": "FunctionDefinition", + "src": "11290:164:5", + "body": { + "id": 14242, + "nodeType": "Block", + "src": "11353:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c6164647265737329", + "id": 14235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11403:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bcfd9be04f8d6b8ee1ae73075f8fe8db10e4b254a56103daa450197029a55fda", + "typeString": "literal_string \"log(uint256,address,address)\"" + }, + "value": "log(uint256,address,address)" + }, + { + "id": 14236, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14225, + "src": "11435:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14237, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14227, + "src": "11439:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14238, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14229, + "src": "11443:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bcfd9be04f8d6b8ee1ae73075f8fe8db10e4b254a56103daa450197029a55fda", + "typeString": "literal_string \"log(uint256,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14233, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11379:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11379:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14239, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11379:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14232, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11363:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14240, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11363:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14241, + "nodeType": "ExpressionStatement", + "src": "11363:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11299:3:5", + "parameters": { + "id": 14230, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14225, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11311:2:5", + "nodeType": "VariableDeclaration", + "scope": 14243, + "src": "11303:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11303:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14227, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11323:2:5", + "nodeType": "VariableDeclaration", + "scope": 14243, + "src": "11315:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14226, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11315:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14229, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11335:2:5", + "nodeType": "VariableDeclaration", + "scope": 14243, + "src": "11327:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14228, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11327:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11302:36:5" + }, + "returnParameters": { + "id": 14231, + "nodeType": "ParameterList", + "parameters": [], + "src": "11353:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14263, + "nodeType": "FunctionDefinition", + "src": "11460:169:5", + "body": { + "id": 14262, + "nodeType": "Block", + "src": "11529:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e7432353629", + "id": 14255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11579:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca47c4ebe9fba29faff9e6b57fbe69e17216e7526486c463d61c06e8992beece", + "typeString": "literal_string \"log(string,uint256,uint256)\"" + }, + "value": "log(string,uint256,uint256)" + }, + { + "id": 14256, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14245, + "src": "11610:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14257, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14247, + "src": "11614:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14258, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14249, + "src": "11618:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca47c4ebe9fba29faff9e6b57fbe69e17216e7526486c463d61c06e8992beece", + "typeString": "literal_string \"log(string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14253, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11555:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11555:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11555:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14252, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11539:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11539:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14261, + "nodeType": "ExpressionStatement", + "src": "11539:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11469:3:5", + "parameters": { + "id": 14250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14245, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11487:2:5", + "nodeType": "VariableDeclaration", + "scope": 14263, + "src": "11473:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14244, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11473:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14247, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11499:2:5", + "nodeType": "VariableDeclaration", + "scope": 14263, + "src": "11491:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14246, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11491:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14249, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11511:2:5", + "nodeType": "VariableDeclaration", + "scope": 14263, + "src": "11503:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14248, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11503:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11472:42:5" + }, + "returnParameters": { + "id": 14251, + "nodeType": "ParameterList", + "parameters": [], + "src": "11529:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14283, + "nodeType": "FunctionDefinition", + "src": "11635:174:5", + "body": { + "id": 14282, + "nodeType": "Block", + "src": "11710:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e6729", + "id": 14275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11760:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5970e089c65c5d431d60f26e6cf1ec3984c873a96b59f1aed9fc44cdf9078bcf", + "typeString": "literal_string \"log(string,uint256,string)\"" + }, + "value": "log(string,uint256,string)" + }, + { + "id": 14276, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14265, + "src": "11790:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14277, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14267, + "src": "11794:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14278, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14269, + "src": "11798:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5970e089c65c5d431d60f26e6cf1ec3984c873a96b59f1aed9fc44cdf9078bcf", + "typeString": "literal_string \"log(string,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14273, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11736:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11736:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14279, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11736:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14272, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11720:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11720:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14281, + "nodeType": "ExpressionStatement", + "src": "11720:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11644:3:5", + "parameters": { + "id": 14270, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14265, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11662:2:5", + "nodeType": "VariableDeclaration", + "scope": 14283, + "src": "11648:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14264, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11648:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14267, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11674:2:5", + "nodeType": "VariableDeclaration", + "scope": 14283, + "src": "11666:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14266, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11666:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14269, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11692:2:5", + "nodeType": "VariableDeclaration", + "scope": 14283, + "src": "11678:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14268, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11678:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11647:48:5" + }, + "returnParameters": { + "id": 14271, + "nodeType": "ParameterList", + "parameters": [], + "src": "11710:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14303, + "nodeType": "FunctionDefinition", + "src": "11815:163:5", + "body": { + "id": 14302, + "nodeType": "Block", + "src": "11881:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c29", + "id": 14295, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11931:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ca7733b1b473f13a94152fab2b969755f42d925703a46c93a1825aad614f145e", + "typeString": "literal_string \"log(string,uint256,bool)\"" + }, + "value": "log(string,uint256,bool)" + }, + { + "id": 14296, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14285, + "src": "11959:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14297, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14287, + "src": "11963:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14298, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14289, + "src": "11967:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ca7733b1b473f13a94152fab2b969755f42d925703a46c93a1825aad614f145e", + "typeString": "literal_string \"log(string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14293, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "11907:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14294, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "11907:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11907:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14292, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "11891:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14300, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11891:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14301, + "nodeType": "ExpressionStatement", + "src": "11891:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11824:3:5", + "parameters": { + "id": 14290, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14285, + "mutability": "mutable", + "name": "p0", + "nameLocation": "11842:2:5", + "nodeType": "VariableDeclaration", + "scope": 14303, + "src": "11828:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14284, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11828:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14287, + "mutability": "mutable", + "name": "p1", + "nameLocation": "11854:2:5", + "nodeType": "VariableDeclaration", + "scope": 14303, + "src": "11846:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14286, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11846:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14289, + "mutability": "mutable", + "name": "p2", + "nameLocation": "11863:2:5", + "nodeType": "VariableDeclaration", + "scope": 14303, + "src": "11858:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14288, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "11858:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "11827:39:5" + }, + "returnParameters": { + "id": 14291, + "nodeType": "ParameterList", + "parameters": [], + "src": "11881:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14323, + "nodeType": "FunctionDefinition", + "src": "11984:169:5", + "body": { + "id": 14322, + "nodeType": "Block", + "src": "12053:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c6164647265737329", + "id": 14315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12103:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c7ec4485ea8bf18e646e5381f7318f45423199ed371307bc9171a4242f27335", + "typeString": "literal_string \"log(string,uint256,address)\"" + }, + "value": "log(string,uint256,address)" + }, + { + "id": 14316, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14305, + "src": "12134:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14317, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14307, + "src": "12138:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14318, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14309, + "src": "12142:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c7ec4485ea8bf18e646e5381f7318f45423199ed371307bc9171a4242f27335", + "typeString": "literal_string \"log(string,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14313, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12079:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12079:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12079:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14312, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12063:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12063:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14321, + "nodeType": "ExpressionStatement", + "src": "12063:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "11993:3:5", + "parameters": { + "id": 14310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14305, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12011:2:5", + "nodeType": "VariableDeclaration", + "scope": 14323, + "src": "11997:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14304, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11997:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14307, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12023:2:5", + "nodeType": "VariableDeclaration", + "scope": 14323, + "src": "12015:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14306, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12015:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14309, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12035:2:5", + "nodeType": "VariableDeclaration", + "scope": 14323, + "src": "12027:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14308, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12027:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11996:42:5" + }, + "returnParameters": { + "id": 14311, + "nodeType": "ParameterList", + "parameters": [], + "src": "12053:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14343, + "nodeType": "FunctionDefinition", + "src": "12159:174:5", + "body": { + "id": 14342, + "nodeType": "Block", + "src": "12234:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e7432353629", + "id": 14335, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12284:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5821efa12787fd2b80909e807f1dcc73717b87128d89e827e5b876178f2fdbd0", + "typeString": "literal_string \"log(string,string,uint256)\"" + }, + "value": "log(string,string,uint256)" + }, + { + "id": 14336, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14325, + "src": "12314:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14337, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14327, + "src": "12318:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14338, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14329, + "src": "12322:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5821efa12787fd2b80909e807f1dcc73717b87128d89e827e5b876178f2fdbd0", + "typeString": "literal_string \"log(string,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14333, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12260:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12260:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12260:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14332, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12244:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12244:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14341, + "nodeType": "ExpressionStatement", + "src": "12244:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12168:3:5", + "parameters": { + "id": 14330, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14325, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12186:2:5", + "nodeType": "VariableDeclaration", + "scope": 14343, + "src": "12172:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14324, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12172:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14327, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12204:2:5", + "nodeType": "VariableDeclaration", + "scope": 14343, + "src": "12190:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14326, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12190:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14329, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12216:2:5", + "nodeType": "VariableDeclaration", + "scope": 14343, + "src": "12208:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14328, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12208:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12171:48:5" + }, + "returnParameters": { + "id": 14331, + "nodeType": "ParameterList", + "parameters": [], + "src": "12234:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14363, + "nodeType": "FunctionDefinition", + "src": "12339:179:5", + "body": { + "id": 14362, + "nodeType": "Block", + "src": "12420:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e6729", + "id": 14355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12470:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + "value": "log(string,string,string)" + }, + { + "id": 14356, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14345, + "src": "12499:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14357, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14347, + "src": "12503:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14358, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14349, + "src": "12507:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ced7cef693312206c21f0e92e3b54e2e16bf33db5eec350c78866822c665e1f", + "typeString": "literal_string \"log(string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14353, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12446:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12446:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14359, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12446:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14352, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12430:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12430:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14361, + "nodeType": "ExpressionStatement", + "src": "12430:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12348:3:5", + "parameters": { + "id": 14350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14345, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12366:2:5", + "nodeType": "VariableDeclaration", + "scope": 14363, + "src": "12352:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14344, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12352:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14347, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12384:2:5", + "nodeType": "VariableDeclaration", + "scope": 14363, + "src": "12370:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14346, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12370:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14349, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12402:2:5", + "nodeType": "VariableDeclaration", + "scope": 14363, + "src": "12388:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14348, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12388:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12351:54:5" + }, + "returnParameters": { + "id": 14351, + "nodeType": "ParameterList", + "parameters": [], + "src": "12420:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14383, + "nodeType": "FunctionDefinition", + "src": "12524:168:5", + "body": { + "id": 14382, + "nodeType": "Block", + "src": "12596:96:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c29", + "id": 14375, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12646:25:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + "value": "log(string,string,bool)" + }, + { + "id": 14376, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14365, + "src": "12673:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14377, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14367, + "src": "12677:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14378, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14369, + "src": "12681:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b0e0f9b5ad960213f9ab262d120ce4ec3edffc58d1ad51b99628a777e82d8acb", + "typeString": "literal_string \"log(string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14373, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12622:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14374, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12622:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14379, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12622:62:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14372, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12606:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12606:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14381, + "nodeType": "ExpressionStatement", + "src": "12606:79:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12533:3:5", + "parameters": { + "id": 14370, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14365, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12551:2:5", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "12537:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14364, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12537:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14367, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12569:2:5", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "12555:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14366, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12555:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14369, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12578:2:5", + "nodeType": "VariableDeclaration", + "scope": 14383, + "src": "12573:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14368, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12573:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "12536:45:5" + }, + "returnParameters": { + "id": 14371, + "nodeType": "ParameterList", + "parameters": [], + "src": "12596:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14403, + "nodeType": "FunctionDefinition", + "src": "12698:174:5", + "body": { + "id": 14402, + "nodeType": "Block", + "src": "12773:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c6164647265737329", + "id": 14395, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12823:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + "value": "log(string,string,address)" + }, + { + "id": 14396, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14385, + "src": "12853:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14397, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14387, + "src": "12857:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14398, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14389, + "src": "12861:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_95ed0195ee22a092ad93d352c33e8dc78b91f0c01eab9cff270af55b2ae65768", + "typeString": "literal_string \"log(string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14393, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12799:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12799:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14399, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12799:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14392, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12783:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12783:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14401, + "nodeType": "ExpressionStatement", + "src": "12783:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12707:3:5", + "parameters": { + "id": 14390, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14385, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12725:2:5", + "nodeType": "VariableDeclaration", + "scope": 14403, + "src": "12711:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14384, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12711:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14387, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12743:2:5", + "nodeType": "VariableDeclaration", + "scope": 14403, + "src": "12729:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14386, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12729:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14389, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12755:2:5", + "nodeType": "VariableDeclaration", + "scope": 14403, + "src": "12747:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14388, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12747:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12710:48:5" + }, + "returnParameters": { + "id": 14391, + "nodeType": "ParameterList", + "parameters": [], + "src": "12773:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14423, + "nodeType": "FunctionDefinition", + "src": "12878:163:5", + "body": { + "id": 14422, + "nodeType": "Block", + "src": "12944:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e7432353629", + "id": 14415, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12994:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c95958d6bc6e492868f9bea34fa0d5d3bf60736d44598880e7a9a99746b5d26a", + "typeString": "literal_string \"log(string,bool,uint256)\"" + }, + "value": "log(string,bool,uint256)" + }, + { + "id": 14416, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14405, + "src": "13022:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14417, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14407, + "src": "13026:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14418, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14409, + "src": "13030:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c95958d6bc6e492868f9bea34fa0d5d3bf60736d44598880e7a9a99746b5d26a", + "typeString": "literal_string \"log(string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14413, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "12970:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "12970:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12970:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14412, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "12954:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12954:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14421, + "nodeType": "ExpressionStatement", + "src": "12954:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "12887:3:5", + "parameters": { + "id": 14410, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14405, + "mutability": "mutable", + "name": "p0", + "nameLocation": "12905:2:5", + "nodeType": "VariableDeclaration", + "scope": 14423, + "src": "12891:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14404, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12891:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14407, + "mutability": "mutable", + "name": "p1", + "nameLocation": "12914:2:5", + "nodeType": "VariableDeclaration", + "scope": 14423, + "src": "12909:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14406, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "12909:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14409, + "mutability": "mutable", + "name": "p2", + "nameLocation": "12926:2:5", + "nodeType": "VariableDeclaration", + "scope": 14423, + "src": "12918:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14408, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12918:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12890:39:5" + }, + "returnParameters": { + "id": 14411, + "nodeType": "ParameterList", + "parameters": [], + "src": "12944:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14443, + "nodeType": "FunctionDefinition", + "src": "13047:168:5", + "body": { + "id": 14442, + "nodeType": "Block", + "src": "13119:96:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e6729", + "id": 14435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13169:25:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + "value": "log(string,bool,string)" + }, + { + "id": 14436, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14425, + "src": "13196:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14437, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14427, + "src": "13200:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14438, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14429, + "src": "13204:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e298f47d872a89293d316b9b936000a26f83eda2ba3171b2f9f16e2bf618c3e7", + "typeString": "literal_string \"log(string,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14433, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13145:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13145:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14439, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13145:62:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14432, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13129:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14440, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13129:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14441, + "nodeType": "ExpressionStatement", + "src": "13129:79:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13056:3:5", + "parameters": { + "id": 14430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14425, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13074:2:5", + "nodeType": "VariableDeclaration", + "scope": 14443, + "src": "13060:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14424, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13060:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14427, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13083:2:5", + "nodeType": "VariableDeclaration", + "scope": 14443, + "src": "13078:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13078:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14429, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13101:2:5", + "nodeType": "VariableDeclaration", + "scope": 14443, + "src": "13087:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14428, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13087:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13059:45:5" + }, + "returnParameters": { + "id": 14431, + "nodeType": "ParameterList", + "parameters": [], + "src": "13119:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14463, + "nodeType": "FunctionDefinition", + "src": "13221:157:5", + "body": { + "id": 14462, + "nodeType": "Block", + "src": "13284:94:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c29", + "id": 14455, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13334:23:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + "value": "log(string,bool,bool)" + }, + { + "id": 14456, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14445, + "src": "13359:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14457, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14447, + "src": "13363:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14458, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14449, + "src": "13367:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_850b7ad637241a873b861925ccffb71aaffb030b1df8850f324c9804bc7b443d", + "typeString": "literal_string \"log(string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14453, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13310:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14454, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13310:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14459, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13310:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14452, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13294:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13294:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14461, + "nodeType": "ExpressionStatement", + "src": "13294:77:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13230:3:5", + "parameters": { + "id": 14450, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14445, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13248:2:5", + "nodeType": "VariableDeclaration", + "scope": 14463, + "src": "13234:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14444, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13234:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14447, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13257:2:5", + "nodeType": "VariableDeclaration", + "scope": 14463, + "src": "13252:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14446, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13252:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14449, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13266:2:5", + "nodeType": "VariableDeclaration", + "scope": 14463, + "src": "13261:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14448, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13261:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13233:36:5" + }, + "returnParameters": { + "id": 14451, + "nodeType": "ParameterList", + "parameters": [], + "src": "13284:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14483, + "nodeType": "FunctionDefinition", + "src": "13384:163:5", + "body": { + "id": 14482, + "nodeType": "Block", + "src": "13450:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c6164647265737329", + "id": 14475, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13500:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + "value": "log(string,bool,address)" + }, + { + "id": 14476, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14465, + "src": "13528:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14477, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14467, + "src": "13532:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14478, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14469, + "src": "13536:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_932bbb385d479707ff387e3bb2d8968a7b4115e938510c531aa15b50507fc27f", + "typeString": "literal_string \"log(string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14473, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13476:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13476:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13476:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14472, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13460:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13460:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14481, + "nodeType": "ExpressionStatement", + "src": "13460:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13393:3:5", + "parameters": { + "id": 14470, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14465, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13411:2:5", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "13397:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14464, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13397:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14467, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13420:2:5", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "13415:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14466, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13415:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14469, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13432:2:5", + "nodeType": "VariableDeclaration", + "scope": 14483, + "src": "13424:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14468, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13424:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13396:39:5" + }, + "returnParameters": { + "id": 14471, + "nodeType": "ParameterList", + "parameters": [], + "src": "13450:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14503, + "nodeType": "FunctionDefinition", + "src": "13553:169:5", + "body": { + "id": 14502, + "nodeType": "Block", + "src": "13622:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e7432353629", + "id": 14495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13672:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d26b92533630e908cb95a1b2ed09291c6aa98f8da7094a2325f8c86cd45e5e4", + "typeString": "literal_string \"log(string,address,uint256)\"" + }, + "value": "log(string,address,uint256)" + }, + { + "id": 14496, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14485, + "src": "13703:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14497, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14487, + "src": "13707:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14498, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14489, + "src": "13711:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d26b92533630e908cb95a1b2ed09291c6aa98f8da7094a2325f8c86cd45e5e4", + "typeString": "literal_string \"log(string,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14493, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13648:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13648:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13648:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14492, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13632:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13632:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14501, + "nodeType": "ExpressionStatement", + "src": "13632:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13562:3:5", + "parameters": { + "id": 14490, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14485, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13580:2:5", + "nodeType": "VariableDeclaration", + "scope": 14503, + "src": "13566:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14484, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13566:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14487, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13592:2:5", + "nodeType": "VariableDeclaration", + "scope": 14503, + "src": "13584:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14486, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13584:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14489, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13604:2:5", + "nodeType": "VariableDeclaration", + "scope": 14503, + "src": "13596:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14488, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13596:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13565:42:5" + }, + "returnParameters": { + "id": 14491, + "nodeType": "ParameterList", + "parameters": [], + "src": "13622:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14523, + "nodeType": "FunctionDefinition", + "src": "13728:174:5", + "body": { + "id": 14522, + "nodeType": "Block", + "src": "13803:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e6729", + "id": 14515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13853:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + "value": "log(string,address,string)" + }, + { + "id": 14516, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14505, + "src": "13883:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14517, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14507, + "src": "13887:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14518, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14509, + "src": "13891:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0e9ad4f87059a51cce5555e129ca819f7e5d52e9c65a4e175882207ee47d634", + "typeString": "literal_string \"log(string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14513, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13829:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14514, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13829:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14519, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13829:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14512, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13813:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14520, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13813:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14521, + "nodeType": "ExpressionStatement", + "src": "13813:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13737:3:5", + "parameters": { + "id": 14510, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14505, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13755:2:5", + "nodeType": "VariableDeclaration", + "scope": 14523, + "src": "13741:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13741:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14507, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13767:2:5", + "nodeType": "VariableDeclaration", + "scope": 14523, + "src": "13759:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14506, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13759:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14509, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13785:2:5", + "nodeType": "VariableDeclaration", + "scope": 14523, + "src": "13771:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14508, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13771:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13740:48:5" + }, + "returnParameters": { + "id": 14511, + "nodeType": "ParameterList", + "parameters": [], + "src": "13803:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14543, + "nodeType": "FunctionDefinition", + "src": "13908:163:5", + "body": { + "id": 14542, + "nodeType": "Block", + "src": "13974:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c29", + "id": 14535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14024:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + "value": "log(string,address,bool)" + }, + { + "id": 14536, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14525, + "src": "14052:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14537, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14527, + "src": "14056:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14538, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14529, + "src": "14060:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c91d5ed4480e0b3323f998bcee9594aa98173c7324b015a4713a7c8429afd0b8", + "typeString": "literal_string \"log(string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14533, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14000:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14000:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14000:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14532, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "13984:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14540, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13984:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14541, + "nodeType": "ExpressionStatement", + "src": "13984:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "13917:3:5", + "parameters": { + "id": 14530, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14525, + "mutability": "mutable", + "name": "p0", + "nameLocation": "13935:2:5", + "nodeType": "VariableDeclaration", + "scope": 14543, + "src": "13921:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14524, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13921:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14527, + "mutability": "mutable", + "name": "p1", + "nameLocation": "13947:2:5", + "nodeType": "VariableDeclaration", + "scope": 14543, + "src": "13939:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14526, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13939:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14529, + "mutability": "mutable", + "name": "p2", + "nameLocation": "13956:2:5", + "nodeType": "VariableDeclaration", + "scope": 14543, + "src": "13951:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14528, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "13951:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "13920:39:5" + }, + "returnParameters": { + "id": 14531, + "nodeType": "ParameterList", + "parameters": [], + "src": "13974:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14563, + "nodeType": "FunctionDefinition", + "src": "14077:169:5", + "body": { + "id": 14562, + "nodeType": "Block", + "src": "14146:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c6164647265737329", + "id": 14555, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14196:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + "value": "log(string,address,address)" + }, + { + "id": 14556, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14545, + "src": "14227:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14557, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14547, + "src": "14231:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14558, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14549, + "src": "14235:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fcec75e0902c9d61eded5d9f2eed16d5b0f2cd255fe6fa77733f59e1063823e8", + "typeString": "literal_string \"log(string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14553, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14172:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14172:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14172:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14552, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14156:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14156:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14561, + "nodeType": "ExpressionStatement", + "src": "14156:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14086:3:5", + "parameters": { + "id": 14550, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14545, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14104:2:5", + "nodeType": "VariableDeclaration", + "scope": 14563, + "src": "14090:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14544, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14090:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14547, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14116:2:5", + "nodeType": "VariableDeclaration", + "scope": 14563, + "src": "14108:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14546, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14108:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14549, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14128:2:5", + "nodeType": "VariableDeclaration", + "scope": 14563, + "src": "14120:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14548, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14120:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14089:42:5" + }, + "returnParameters": { + "id": 14551, + "nodeType": "ParameterList", + "parameters": [], + "src": "14146:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14583, + "nodeType": "FunctionDefinition", + "src": "14252:158:5", + "body": { + "id": 14582, + "nodeType": "Block", + "src": "14312:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e7432353629", + "id": 14575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14362:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_371033677da72158a60d6dc6ec9fa4683ad37ad854670ba3fcf814603cf8bb28", + "typeString": "literal_string \"log(bool,uint256,uint256)\"" + }, + "value": "log(bool,uint256,uint256)" + }, + { + "id": 14576, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14565, + "src": "14391:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14577, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14567, + "src": "14395:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14578, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14569, + "src": "14399:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_371033677da72158a60d6dc6ec9fa4683ad37ad854670ba3fcf814603cf8bb28", + "typeString": "literal_string \"log(bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14338:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14338:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14579, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14338:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14572, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14322:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14322:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14581, + "nodeType": "ExpressionStatement", + "src": "14322:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14261:3:5", + "parameters": { + "id": 14570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14565, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14270:2:5", + "nodeType": "VariableDeclaration", + "scope": 14583, + "src": "14265:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14564, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14265:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14567, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14282:2:5", + "nodeType": "VariableDeclaration", + "scope": 14583, + "src": "14274:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14566, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14274:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14569, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14294:2:5", + "nodeType": "VariableDeclaration", + "scope": 14583, + "src": "14286:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14568, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14286:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14264:33:5" + }, + "returnParameters": { + "id": 14571, + "nodeType": "ParameterList", + "parameters": [], + "src": "14312:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14603, + "nodeType": "FunctionDefinition", + "src": "14416:163:5", + "body": { + "id": 14602, + "nodeType": "Block", + "src": "14482:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e6729", + "id": 14595, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14532:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3fc3970359ec5bcd4a409af812c658e77b7983043c9e7299db566fbd8131447", + "typeString": "literal_string \"log(bool,uint256,string)\"" + }, + "value": "log(bool,uint256,string)" + }, + { + "id": 14596, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14585, + "src": "14560:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14597, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14587, + "src": "14564:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14598, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14589, + "src": "14568:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3fc3970359ec5bcd4a409af812c658e77b7983043c9e7299db566fbd8131447", + "typeString": "literal_string \"log(bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14593, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14508:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14508:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14599, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14508:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14592, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14492:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14492:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14601, + "nodeType": "ExpressionStatement", + "src": "14492:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14425:3:5", + "parameters": { + "id": 14590, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14585, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14434:2:5", + "nodeType": "VariableDeclaration", + "scope": 14603, + "src": "14429:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14584, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14429:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14587, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14446:2:5", + "nodeType": "VariableDeclaration", + "scope": 14603, + "src": "14438:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14586, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14438:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14589, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14464:2:5", + "nodeType": "VariableDeclaration", + "scope": 14603, + "src": "14450:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14588, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14450:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "14428:39:5" + }, + "returnParameters": { + "id": 14591, + "nodeType": "ParameterList", + "parameters": [], + "src": "14482:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14623, + "nodeType": "FunctionDefinition", + "src": "14585:152:5", + "body": { + "id": 14622, + "nodeType": "Block", + "src": "14642:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c29", + "id": 14615, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14692:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e8defba9dac8a3ed4ad0f711b733171fd223b5d127b3485540d69bec05995a26", + "typeString": "literal_string \"log(bool,uint256,bool)\"" + }, + "value": "log(bool,uint256,bool)" + }, + { + "id": 14616, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14605, + "src": "14718:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14617, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14607, + "src": "14722:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14618, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14609, + "src": "14726:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e8defba9dac8a3ed4ad0f711b733171fd223b5d127b3485540d69bec05995a26", + "typeString": "literal_string \"log(bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14613, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14668:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14668:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14668:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14612, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14652:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14652:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14621, + "nodeType": "ExpressionStatement", + "src": "14652:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14594:3:5", + "parameters": { + "id": 14610, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14605, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14603:2:5", + "nodeType": "VariableDeclaration", + "scope": 14623, + "src": "14598:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14604, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14598:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14607, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14615:2:5", + "nodeType": "VariableDeclaration", + "scope": 14623, + "src": "14607:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14606, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14607:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14609, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14624:2:5", + "nodeType": "VariableDeclaration", + "scope": 14623, + "src": "14619:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14608, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14619:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "14597:30:5" + }, + "returnParameters": { + "id": 14611, + "nodeType": "ParameterList", + "parameters": [], + "src": "14642:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14643, + "nodeType": "FunctionDefinition", + "src": "14743:158:5", + "body": { + "id": 14642, + "nodeType": "Block", + "src": "14803:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c6164647265737329", + "id": 14635, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14853:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_088ef9d2f4d01d13401423c19b7f189200a7ad3f567d9e20f37299f94f92f574", + "typeString": "literal_string \"log(bool,uint256,address)\"" + }, + "value": "log(bool,uint256,address)" + }, + { + "id": 14636, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14625, + "src": "14882:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14637, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14627, + "src": "14886:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14638, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14629, + "src": "14890:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_088ef9d2f4d01d13401423c19b7f189200a7ad3f567d9e20f37299f94f92f574", + "typeString": "literal_string \"log(bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14633, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14829:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14634, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14829:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14829:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14632, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14813:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14813:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14641, + "nodeType": "ExpressionStatement", + "src": "14813:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14752:3:5", + "parameters": { + "id": 14630, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14625, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14761:2:5", + "nodeType": "VariableDeclaration", + "scope": 14643, + "src": "14756:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14756:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14627, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14773:2:5", + "nodeType": "VariableDeclaration", + "scope": 14643, + "src": "14765:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14626, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14765:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14629, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14785:2:5", + "nodeType": "VariableDeclaration", + "scope": 14643, + "src": "14777:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14628, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14777:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "14755:33:5" + }, + "returnParameters": { + "id": 14631, + "nodeType": "ParameterList", + "parameters": [], + "src": "14803:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14663, + "nodeType": "FunctionDefinition", + "src": "14907:163:5", + "body": { + "id": 14662, + "nodeType": "Block", + "src": "14973:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e7432353629", + "id": 14655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15023:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1093ee11e671928331708700100b356c86a8494f33b170ddcffd95462a0adf64", + "typeString": "literal_string \"log(bool,string,uint256)\"" + }, + "value": "log(bool,string,uint256)" + }, + { + "id": 14656, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14645, + "src": "15051:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14657, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14647, + "src": "15055:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14658, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14649, + "src": "15059:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1093ee11e671928331708700100b356c86a8494f33b170ddcffd95462a0adf64", + "typeString": "literal_string \"log(bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14999:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14999:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14999:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14652, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "14983:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14983:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14661, + "nodeType": "ExpressionStatement", + "src": "14983:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "14916:3:5", + "parameters": { + "id": 14650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14645, + "mutability": "mutable", + "name": "p0", + "nameLocation": "14925:2:5", + "nodeType": "VariableDeclaration", + "scope": 14663, + "src": "14920:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14644, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14920:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14647, + "mutability": "mutable", + "name": "p1", + "nameLocation": "14943:2:5", + "nodeType": "VariableDeclaration", + "scope": 14663, + "src": "14929:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14646, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14929:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14649, + "mutability": "mutable", + "name": "p2", + "nameLocation": "14955:2:5", + "nodeType": "VariableDeclaration", + "scope": 14663, + "src": "14947:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14648, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14947:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14919:39:5" + }, + "returnParameters": { + "id": 14651, + "nodeType": "ParameterList", + "parameters": [], + "src": "14973:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14683, + "nodeType": "FunctionDefinition", + "src": "15076:168:5", + "body": { + "id": 14682, + "nodeType": "Block", + "src": "15148:96:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e6729", + "id": 14675, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15198:25:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + "value": "log(bool,string,string)" + }, + { + "id": 14676, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14665, + "src": "15225:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14677, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14667, + "src": "15229:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14678, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14669, + "src": "15233:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b076847f8b4aee0cfbf46ec501532f9f3c85a581aff135287ff8e917c0a39102", + "typeString": "literal_string \"log(bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14673, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15174:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14674, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15174:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14679, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15174:62:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14672, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15158:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15158:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14681, + "nodeType": "ExpressionStatement", + "src": "15158:79:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15085:3:5", + "parameters": { + "id": 14670, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14665, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15094:2:5", + "nodeType": "VariableDeclaration", + "scope": 14683, + "src": "15089:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14664, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15089:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14667, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15112:2:5", + "nodeType": "VariableDeclaration", + "scope": 14683, + "src": "15098:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14666, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15098:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14669, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15130:2:5", + "nodeType": "VariableDeclaration", + "scope": 14683, + "src": "15116:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14668, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15116:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15088:45:5" + }, + "returnParameters": { + "id": 14671, + "nodeType": "ParameterList", + "parameters": [], + "src": "15148:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14703, + "nodeType": "FunctionDefinition", + "src": "15250:157:5", + "body": { + "id": 14702, + "nodeType": "Block", + "src": "15313:94:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c29", + "id": 14695, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15363:23:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + "value": "log(bool,string,bool)" + }, + { + "id": 14696, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14685, + "src": "15388:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14697, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14687, + "src": "15392:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14698, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14689, + "src": "15396:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dbb4c2477dacc98e0e5b96fd6ca6bf0ae1f82dd042439d9f53f8d963bef43eaa", + "typeString": "literal_string \"log(bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14693, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15339:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15339:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15339:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14692, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15323:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15323:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14701, + "nodeType": "ExpressionStatement", + "src": "15323:77:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15259:3:5", + "parameters": { + "id": 14690, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14685, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15268:2:5", + "nodeType": "VariableDeclaration", + "scope": 14703, + "src": "15263:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14684, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15263:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14687, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15286:2:5", + "nodeType": "VariableDeclaration", + "scope": 14703, + "src": "15272:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14686, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15272:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14689, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15295:2:5", + "nodeType": "VariableDeclaration", + "scope": 14703, + "src": "15290:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14688, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15290:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15262:36:5" + }, + "returnParameters": { + "id": 14691, + "nodeType": "ParameterList", + "parameters": [], + "src": "15313:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14723, + "nodeType": "FunctionDefinition", + "src": "15413:163:5", + "body": { + "id": 14722, + "nodeType": "Block", + "src": "15479:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c6164647265737329", + "id": 14715, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15529:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + "value": "log(bool,string,address)" + }, + { + "id": 14716, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14705, + "src": "15557:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14717, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14707, + "src": "15561:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14718, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14709, + "src": "15565:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9591b953c9b1d0af9d1e3bc0f6ea9aa5b0e1af8c702f85b36e21b9b2d7e4da79", + "typeString": "literal_string \"log(bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14713, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15505:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15505:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15505:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14712, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15489:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15489:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14721, + "nodeType": "ExpressionStatement", + "src": "15489:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15422:3:5", + "parameters": { + "id": 14710, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14705, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15431:2:5", + "nodeType": "VariableDeclaration", + "scope": 14723, + "src": "15426:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14704, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15426:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14707, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15449:2:5", + "nodeType": "VariableDeclaration", + "scope": 14723, + "src": "15435:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14706, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15435:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14709, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15461:2:5", + "nodeType": "VariableDeclaration", + "scope": 14723, + "src": "15453:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14708, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15453:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "15425:39:5" + }, + "returnParameters": { + "id": 14711, + "nodeType": "ParameterList", + "parameters": [], + "src": "15479:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14743, + "nodeType": "FunctionDefinition", + "src": "15582:152:5", + "body": { + "id": 14742, + "nodeType": "Block", + "src": "15639:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e7432353629", + "id": 14735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15689:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12f216023a0243e7ece19b75fc4619b59ea663e0aefdf2e4b1faa16a9fa3a211", + "typeString": "literal_string \"log(bool,bool,uint256)\"" + }, + "value": "log(bool,bool,uint256)" + }, + { + "id": 14736, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14725, + "src": "15715:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14737, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14727, + "src": "15719:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14738, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14729, + "src": "15723:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12f216023a0243e7ece19b75fc4619b59ea663e0aefdf2e4b1faa16a9fa3a211", + "typeString": "literal_string \"log(bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15665:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15665:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14739, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15665:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14732, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15649:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15649:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14741, + "nodeType": "ExpressionStatement", + "src": "15649:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15591:3:5", + "parameters": { + "id": 14730, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14725, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15600:2:5", + "nodeType": "VariableDeclaration", + "scope": 14743, + "src": "15595:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14724, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15595:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14727, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15609:2:5", + "nodeType": "VariableDeclaration", + "scope": 14743, + "src": "15604:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14726, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15604:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14729, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15621:2:5", + "nodeType": "VariableDeclaration", + "scope": 14743, + "src": "15613:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14728, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15613:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15594:30:5" + }, + "returnParameters": { + "id": 14731, + "nodeType": "ParameterList", + "parameters": [], + "src": "15639:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14763, + "nodeType": "FunctionDefinition", + "src": "15740:157:5", + "body": { + "id": 14762, + "nodeType": "Block", + "src": "15803:94:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e6729", + "id": 14755, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15853:23:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + "value": "log(bool,bool,string)" + }, + { + "id": 14756, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14745, + "src": "15878:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14757, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14747, + "src": "15882:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14758, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14749, + "src": "15886:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2555fa465662416fc443b21c515f245dc550a66f7c658773f7bd7ad91c82f2cc", + "typeString": "literal_string \"log(bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14753, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15829:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14754, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15829:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15829:60:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14752, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15813:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14760, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15813:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14761, + "nodeType": "ExpressionStatement", + "src": "15813:77:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15749:3:5", + "parameters": { + "id": 14750, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14745, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15758:2:5", + "nodeType": "VariableDeclaration", + "scope": 14763, + "src": "15753:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14744, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15753:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14747, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15767:2:5", + "nodeType": "VariableDeclaration", + "scope": 14763, + "src": "15762:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14746, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15762:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14749, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15785:2:5", + "nodeType": "VariableDeclaration", + "scope": 14763, + "src": "15771:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14748, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15771:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15752:36:5" + }, + "returnParameters": { + "id": 14751, + "nodeType": "ParameterList", + "parameters": [], + "src": "15803:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14783, + "nodeType": "FunctionDefinition", + "src": "15903:146:5", + "body": { + "id": 14782, + "nodeType": "Block", + "src": "15957:92:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c29", + "id": 14775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16007:21:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool)" + }, + { + "id": 14776, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14765, + "src": "16030:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14777, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14767, + "src": "16034:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14778, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14769, + "src": "16038:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50709698278bb02f656e4ac53a2ae8ef0ec4064d340360a5fa4d933e9a742590", + "typeString": "literal_string \"log(bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14773, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15983:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14774, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "15983:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15983:58:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14772, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "15967:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15967:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14781, + "nodeType": "ExpressionStatement", + "src": "15967:75:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "15912:3:5", + "parameters": { + "id": 14770, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14765, + "mutability": "mutable", + "name": "p0", + "nameLocation": "15921:2:5", + "nodeType": "VariableDeclaration", + "scope": 14783, + "src": "15916:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14764, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15916:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14767, + "mutability": "mutable", + "name": "p1", + "nameLocation": "15930:2:5", + "nodeType": "VariableDeclaration", + "scope": 14783, + "src": "15925:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14766, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15925:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14769, + "mutability": "mutable", + "name": "p2", + "nameLocation": "15939:2:5", + "nodeType": "VariableDeclaration", + "scope": 14783, + "src": "15934:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14768, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15934:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15915:27:5" + }, + "returnParameters": { + "id": 14771, + "nodeType": "ParameterList", + "parameters": [], + "src": "15957:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14803, + "nodeType": "FunctionDefinition", + "src": "16055:152:5", + "body": { + "id": 14802, + "nodeType": "Block", + "src": "16112:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c6164647265737329", + "id": 14795, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16162:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + "value": "log(bool,bool,address)" + }, + { + "id": 14796, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14785, + "src": "16188:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14797, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14787, + "src": "16192:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14798, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14789, + "src": "16196:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1078f68da6ddbbe80f829fe8d54d1f2c6347e1ee4ec5a2a7a3a330ada9eccf81", + "typeString": "literal_string \"log(bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14793, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16138:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14794, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16138:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16138:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14792, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16122:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16122:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14801, + "nodeType": "ExpressionStatement", + "src": "16122:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16064:3:5", + "parameters": { + "id": 14790, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14785, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16073:2:5", + "nodeType": "VariableDeclaration", + "scope": 14803, + "src": "16068:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14784, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16068:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14787, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16082:2:5", + "nodeType": "VariableDeclaration", + "scope": 14803, + "src": "16077:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14786, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16077:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14789, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16094:2:5", + "nodeType": "VariableDeclaration", + "scope": 14803, + "src": "16086:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14788, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16086:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16067:30:5" + }, + "returnParameters": { + "id": 14791, + "nodeType": "ParameterList", + "parameters": [], + "src": "16112:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14823, + "nodeType": "FunctionDefinition", + "src": "16213:158:5", + "body": { + "id": 14822, + "nodeType": "Block", + "src": "16273:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e7432353629", + "id": 14815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16323:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f7b9afb4f9ee9df3fee50155d0accfa23536f443bcbc89ec11f75df422d05ac", + "typeString": "literal_string \"log(bool,address,uint256)\"" + }, + "value": "log(bool,address,uint256)" + }, + { + "id": 14816, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14805, + "src": "16352:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14817, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14807, + "src": "16356:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14818, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14809, + "src": "16360:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f7b9afb4f9ee9df3fee50155d0accfa23536f443bcbc89ec11f75df422d05ac", + "typeString": "literal_string \"log(bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14813, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16299:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16299:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16299:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14812, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16283:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16283:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14821, + "nodeType": "ExpressionStatement", + "src": "16283:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16222:3:5", + "parameters": { + "id": 14810, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14805, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16231:2:5", + "nodeType": "VariableDeclaration", + "scope": 14823, + "src": "16226:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14804, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16226:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14807, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16243:2:5", + "nodeType": "VariableDeclaration", + "scope": 14823, + "src": "16235:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14806, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16235:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14809, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16255:2:5", + "nodeType": "VariableDeclaration", + "scope": 14823, + "src": "16247:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14808, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16247:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16225:33:5" + }, + "returnParameters": { + "id": 14811, + "nodeType": "ParameterList", + "parameters": [], + "src": "16273:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14843, + "nodeType": "FunctionDefinition", + "src": "16377:163:5", + "body": { + "id": 14842, + "nodeType": "Block", + "src": "16443:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e6729", + "id": 14835, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16493:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + "value": "log(bool,address,string)" + }, + { + "id": 14836, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14825, + "src": "16521:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14837, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14827, + "src": "16525:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14838, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14829, + "src": "16529:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de9a927090b15ed84eefc0c471675a23ce67fd75011b1652fe17ca2dd0dcd06d", + "typeString": "literal_string \"log(bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14833, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16469:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14834, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16469:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14839, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16469:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14832, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16453:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16453:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14841, + "nodeType": "ExpressionStatement", + "src": "16453:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16386:3:5", + "parameters": { + "id": 14830, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14825, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16395:2:5", + "nodeType": "VariableDeclaration", + "scope": 14843, + "src": "16390:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14824, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16390:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14827, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16407:2:5", + "nodeType": "VariableDeclaration", + "scope": 14843, + "src": "16399:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14826, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16399:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14829, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16425:2:5", + "nodeType": "VariableDeclaration", + "scope": 14843, + "src": "16411:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14828, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "16411:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "16389:39:5" + }, + "returnParameters": { + "id": 14831, + "nodeType": "ParameterList", + "parameters": [], + "src": "16443:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14863, + "nodeType": "FunctionDefinition", + "src": "16546:152:5", + "body": { + "id": 14862, + "nodeType": "Block", + "src": "16603:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c29", + "id": 14855, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16653:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + "value": "log(bool,address,bool)" + }, + { + "id": 14856, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14845, + "src": "16679:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14857, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14847, + "src": "16683:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14858, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14849, + "src": "16687:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18c9c746c9d0e38e4dc234ee76e678bbaa4e473eca3dce0969637d7f01e4a908", + "typeString": "literal_string \"log(bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14853, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16629:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14854, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16629:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16629:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14852, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16613:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16613:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14861, + "nodeType": "ExpressionStatement", + "src": "16613:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16555:3:5", + "parameters": { + "id": 14850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14845, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16564:2:5", + "nodeType": "VariableDeclaration", + "scope": 14863, + "src": "16559:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14844, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16559:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14847, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16576:2:5", + "nodeType": "VariableDeclaration", + "scope": 14863, + "src": "16568:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14846, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16568:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14849, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16585:2:5", + "nodeType": "VariableDeclaration", + "scope": 14863, + "src": "16580:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14848, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16580:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "16558:30:5" + }, + "returnParameters": { + "id": 14851, + "nodeType": "ParameterList", + "parameters": [], + "src": "16603:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14883, + "nodeType": "FunctionDefinition", + "src": "16704:158:5", + "body": { + "id": 14882, + "nodeType": "Block", + "src": "16764:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c6164647265737329", + "id": 14875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16814:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + "value": "log(bool,address,address)" + }, + { + "id": 14876, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14865, + "src": "16843:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 14877, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14867, + "src": "16847:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14878, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14869, + "src": "16851:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2763667477f08a6a3f8ce84e1cc1aeb5e67ee2996f5f36e8939da2b8b8f0265", + "typeString": "literal_string \"log(bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14873, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16790:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16790:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16790:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14872, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16774:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16774:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14881, + "nodeType": "ExpressionStatement", + "src": "16774:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16713:3:5", + "parameters": { + "id": 14870, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14865, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16722:2:5", + "nodeType": "VariableDeclaration", + "scope": 14883, + "src": "16717:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14864, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "16717:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14867, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16734:2:5", + "nodeType": "VariableDeclaration", + "scope": 14883, + "src": "16726:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14866, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16726:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14869, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16746:2:5", + "nodeType": "VariableDeclaration", + "scope": 14883, + "src": "16738:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16738:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "16716:33:5" + }, + "returnParameters": { + "id": 14871, + "nodeType": "ParameterList", + "parameters": [], + "src": "16764:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14903, + "nodeType": "FunctionDefinition", + "src": "16868:164:5", + "body": { + "id": 14902, + "nodeType": "Block", + "src": "16931:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e7432353629", + "id": 14895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16981:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b69bcaf6823fa467c87c127df102001d1ca4e8a6dc08cab8aa1e5ab4a0ae8c76", + "typeString": "literal_string \"log(address,uint256,uint256)\"" + }, + "value": "log(address,uint256,uint256)" + }, + { + "id": 14896, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14885, + "src": "17013:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14897, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14887, + "src": "17017:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14898, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14889, + "src": "17021:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b69bcaf6823fa467c87c127df102001d1ca4e8a6dc08cab8aa1e5ab4a0ae8c76", + "typeString": "literal_string \"log(address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14893, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16957:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "16957:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16957:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14892, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "16941:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14900, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16941:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14901, + "nodeType": "ExpressionStatement", + "src": "16941:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "16877:3:5", + "parameters": { + "id": 14890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14885, + "mutability": "mutable", + "name": "p0", + "nameLocation": "16889:2:5", + "nodeType": "VariableDeclaration", + "scope": 14903, + "src": "16881:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14884, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16881:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14887, + "mutability": "mutable", + "name": "p1", + "nameLocation": "16901:2:5", + "nodeType": "VariableDeclaration", + "scope": 14903, + "src": "16893:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14886, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16893:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14889, + "mutability": "mutable", + "name": "p2", + "nameLocation": "16913:2:5", + "nodeType": "VariableDeclaration", + "scope": 14903, + "src": "16905:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16905:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16880:36:5" + }, + "returnParameters": { + "id": 14891, + "nodeType": "ParameterList", + "parameters": [], + "src": "16931:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14923, + "nodeType": "FunctionDefinition", + "src": "17038:169:5", + "body": { + "id": 14922, + "nodeType": "Block", + "src": "17107:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e6729", + "id": 14915, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17157:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1f2e8aa7ff0c088860d7b3f0d1dc288d8e8a07808525cc31a5691f1bc0e149d", + "typeString": "literal_string \"log(address,uint256,string)\"" + }, + "value": "log(address,uint256,string)" + }, + { + "id": 14916, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14905, + "src": "17188:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14917, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14907, + "src": "17192:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14918, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14909, + "src": "17196:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1f2e8aa7ff0c088860d7b3f0d1dc288d8e8a07808525cc31a5691f1bc0e149d", + "typeString": "literal_string \"log(address,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14913, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17133:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14914, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17133:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17133:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14912, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17117:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17117:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14921, + "nodeType": "ExpressionStatement", + "src": "17117:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17047:3:5", + "parameters": { + "id": 14910, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14905, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17059:2:5", + "nodeType": "VariableDeclaration", + "scope": 14923, + "src": "17051:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14904, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17051:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14907, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17071:2:5", + "nodeType": "VariableDeclaration", + "scope": 14923, + "src": "17063:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14906, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17063:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14909, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17089:2:5", + "nodeType": "VariableDeclaration", + "scope": 14923, + "src": "17075:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14908, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17075:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "17050:42:5" + }, + "returnParameters": { + "id": 14911, + "nodeType": "ParameterList", + "parameters": [], + "src": "17107:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14943, + "nodeType": "FunctionDefinition", + "src": "17213:158:5", + "body": { + "id": 14942, + "nodeType": "Block", + "src": "17273:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c29", + "id": 14935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17323:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_678209a8f42181c670dc624bae130f552678a896a5cb06db485524796aca1390", + "typeString": "literal_string \"log(address,uint256,bool)\"" + }, + "value": "log(address,uint256,bool)" + }, + { + "id": 14936, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14925, + "src": "17352:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14937, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14927, + "src": "17356:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14938, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14929, + "src": "17360:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_678209a8f42181c670dc624bae130f552678a896a5cb06db485524796aca1390", + "typeString": "literal_string \"log(address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 14933, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17299:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17299:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17299:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14932, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17283:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17283:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14941, + "nodeType": "ExpressionStatement", + "src": "17283:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17222:3:5", + "parameters": { + "id": 14930, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14925, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17234:2:5", + "nodeType": "VariableDeclaration", + "scope": 14943, + "src": "17226:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17226:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14927, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17246:2:5", + "nodeType": "VariableDeclaration", + "scope": 14943, + "src": "17238:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17238:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14929, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17255:2:5", + "nodeType": "VariableDeclaration", + "scope": 14943, + "src": "17250:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14928, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17250:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17225:33:5" + }, + "returnParameters": { + "id": 14931, + "nodeType": "ParameterList", + "parameters": [], + "src": "17273:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14963, + "nodeType": "FunctionDefinition", + "src": "17377:164:5", + "body": { + "id": 14962, + "nodeType": "Block", + "src": "17440:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c6164647265737329", + "id": 14955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17490:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7bc0d848840f8a2b7df87b30af9a8d9856aea86658fd890c9e8abce72cda0b36", + "typeString": "literal_string \"log(address,uint256,address)\"" + }, + "value": "log(address,uint256,address)" + }, + { + "id": 14956, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14945, + "src": "17522:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14957, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14947, + "src": "17526:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 14958, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14949, + "src": "17530:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7bc0d848840f8a2b7df87b30af9a8d9856aea86658fd890c9e8abce72cda0b36", + "typeString": "literal_string \"log(address,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 14953, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17466:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17466:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17466:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14952, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17450:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17450:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14961, + "nodeType": "ExpressionStatement", + "src": "17450:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17386:3:5", + "parameters": { + "id": 14950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14945, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17398:2:5", + "nodeType": "VariableDeclaration", + "scope": 14963, + "src": "17390:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14944, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17390:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14947, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17410:2:5", + "nodeType": "VariableDeclaration", + "scope": 14963, + "src": "17402:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17402:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14949, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17422:2:5", + "nodeType": "VariableDeclaration", + "scope": 14963, + "src": "17414:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14948, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17414:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "17389:36:5" + }, + "returnParameters": { + "id": 14951, + "nodeType": "ParameterList", + "parameters": [], + "src": "17440:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 14983, + "nodeType": "FunctionDefinition", + "src": "17547:169:5", + "body": { + "id": 14982, + "nodeType": "Block", + "src": "17616:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e7432353629", + "id": 14975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17666:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_67dd6ff15de5c635b9900811039f919659774d9843a07b7bcdfb1b54315e9200", + "typeString": "literal_string \"log(address,string,uint256)\"" + }, + "value": "log(address,string,uint256)" + }, + { + "id": 14976, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14965, + "src": "17697:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14977, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14967, + "src": "17701:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14978, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14969, + "src": "17705:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_67dd6ff15de5c635b9900811039f919659774d9843a07b7bcdfb1b54315e9200", + "typeString": "literal_string \"log(address,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 14973, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17642:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17642:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17642:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14972, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17626:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 14980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17626:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 14981, + "nodeType": "ExpressionStatement", + "src": "17626:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17556:3:5", + "parameters": { + "id": 14970, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14965, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17568:2:5", + "nodeType": "VariableDeclaration", + "scope": 14983, + "src": "17560:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14964, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17560:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14967, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17586:2:5", + "nodeType": "VariableDeclaration", + "scope": 14983, + "src": "17572:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14966, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17572:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14969, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17598:2:5", + "nodeType": "VariableDeclaration", + "scope": 14983, + "src": "17590:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 14968, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17590:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "17559:42:5" + }, + "returnParameters": { + "id": 14971, + "nodeType": "ParameterList", + "parameters": [], + "src": "17616:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15003, + "nodeType": "FunctionDefinition", + "src": "17722:174:5", + "body": { + "id": 15002, + "nodeType": "Block", + "src": "17797:99:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e6729", + "id": 14995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17847:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + "value": "log(address,string,string)" + }, + { + "id": 14996, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14985, + "src": "17877:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 14997, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14987, + "src": "17881:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 14998, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 14989, + "src": "17885:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fb77226597c11cd0c52945168d7176a06b9af41edea6a51823db111f35573158", + "typeString": "literal_string \"log(address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 14993, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17823:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 14994, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17823:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 14999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17823:65:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 14992, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17807:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15000, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17807:82:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15001, + "nodeType": "ExpressionStatement", + "src": "17807:82:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17731:3:5", + "parameters": { + "id": 14990, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 14985, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17743:2:5", + "nodeType": "VariableDeclaration", + "scope": 15003, + "src": "17735:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 14984, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17735:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14987, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17761:2:5", + "nodeType": "VariableDeclaration", + "scope": 15003, + "src": "17747:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14986, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17747:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 14989, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17779:2:5", + "nodeType": "VariableDeclaration", + "scope": 15003, + "src": "17765:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 14988, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17765:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "17734:48:5" + }, + "returnParameters": { + "id": 14991, + "nodeType": "ParameterList", + "parameters": [], + "src": "17797:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15023, + "nodeType": "FunctionDefinition", + "src": "17902:163:5", + "body": { + "id": 15022, + "nodeType": "Block", + "src": "17968:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c29", + "id": 15015, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18018:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + "value": "log(address,string,bool)" + }, + { + "id": 15016, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15005, + "src": "18046:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15017, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15007, + "src": "18050:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15018, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15009, + "src": "18054:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf020fb14f49566c5748de1f455c699a10a4ed1d7cf32f9adb28d22878df1b96", + "typeString": "literal_string \"log(address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15013, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17994:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "17994:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17994:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15012, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "17978:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17978:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15021, + "nodeType": "ExpressionStatement", + "src": "17978:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "17911:3:5", + "parameters": { + "id": 15010, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15005, + "mutability": "mutable", + "name": "p0", + "nameLocation": "17923:2:5", + "nodeType": "VariableDeclaration", + "scope": 15023, + "src": "17915:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15004, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "17915:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15007, + "mutability": "mutable", + "name": "p1", + "nameLocation": "17941:2:5", + "nodeType": "VariableDeclaration", + "scope": 15023, + "src": "17927:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15006, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "17927:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15009, + "mutability": "mutable", + "name": "p2", + "nameLocation": "17950:2:5", + "nodeType": "VariableDeclaration", + "scope": 15023, + "src": "17945:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15008, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "17945:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "17914:39:5" + }, + "returnParameters": { + "id": 15011, + "nodeType": "ParameterList", + "parameters": [], + "src": "17968:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15043, + "nodeType": "FunctionDefinition", + "src": "18071:169:5", + "body": { + "id": 15042, + "nodeType": "Block", + "src": "18140:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c6164647265737329", + "id": 15035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18190:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + "value": "log(address,string,address)" + }, + { + "id": 15036, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15025, + "src": "18221:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15037, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15027, + "src": "18225:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15038, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15029, + "src": "18229:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f08744e82875525f1ef885a48453f58e96cac98a5d32bd6d8c38e4977aede231", + "typeString": "literal_string \"log(address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15033, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18166:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18166:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18166:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15032, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18150:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18150:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15041, + "nodeType": "ExpressionStatement", + "src": "18150:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18080:3:5", + "parameters": { + "id": 15030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15025, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18092:2:5", + "nodeType": "VariableDeclaration", + "scope": 15043, + "src": "18084:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15024, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18084:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15027, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18110:2:5", + "nodeType": "VariableDeclaration", + "scope": 15043, + "src": "18096:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15026, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18096:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15029, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18122:2:5", + "nodeType": "VariableDeclaration", + "scope": 15043, + "src": "18114:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15028, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18114:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "18083:42:5" + }, + "returnParameters": { + "id": 15031, + "nodeType": "ParameterList", + "parameters": [], + "src": "18140:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15063, + "nodeType": "FunctionDefinition", + "src": "18246:158:5", + "body": { + "id": 15062, + "nodeType": "Block", + "src": "18306:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e7432353629", + "id": 15055, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18356:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9c4f99fb8e27f663a71adc9f15ace4bdc959202f3b7faa1c8ca25e5e7e8568f9", + "typeString": "literal_string \"log(address,bool,uint256)\"" + }, + "value": "log(address,bool,uint256)" + }, + { + "id": 15056, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15045, + "src": "18385:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15057, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15047, + "src": "18389:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15058, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15049, + "src": "18393:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9c4f99fb8e27f663a71adc9f15ace4bdc959202f3b7faa1c8ca25e5e7e8568f9", + "typeString": "literal_string \"log(address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15053, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18332:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15054, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18332:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15059, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18332:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15052, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18316:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18316:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15061, + "nodeType": "ExpressionStatement", + "src": "18316:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18255:3:5", + "parameters": { + "id": 15050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15045, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18267:2:5", + "nodeType": "VariableDeclaration", + "scope": 15063, + "src": "18259:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15044, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18259:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15047, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18276:2:5", + "nodeType": "VariableDeclaration", + "scope": 15063, + "src": "18271:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15046, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18271:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15049, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18288:2:5", + "nodeType": "VariableDeclaration", + "scope": 15063, + "src": "18280:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18280:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18258:33:5" + }, + "returnParameters": { + "id": 15051, + "nodeType": "ParameterList", + "parameters": [], + "src": "18306:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15083, + "nodeType": "FunctionDefinition", + "src": "18410:163:5", + "body": { + "id": 15082, + "nodeType": "Block", + "src": "18476:97:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e6729", + "id": 15075, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18526:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + "value": "log(address,bool,string)" + }, + { + "id": 15076, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15065, + "src": "18554:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15077, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15067, + "src": "18558:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15078, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15069, + "src": "18562:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_212255cc5ff4a2d867f69451c60f51c24e41784276f4ceffe8ec3af322690750", + "typeString": "literal_string \"log(address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15073, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18502:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18502:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18502:63:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15072, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18486:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18486:80:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15081, + "nodeType": "ExpressionStatement", + "src": "18486:80:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18419:3:5", + "parameters": { + "id": 15070, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15065, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18431:2:5", + "nodeType": "VariableDeclaration", + "scope": 15083, + "src": "18423:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15064, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18423:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15067, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18440:2:5", + "nodeType": "VariableDeclaration", + "scope": 15083, + "src": "18435:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15066, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18435:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15069, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18458:2:5", + "nodeType": "VariableDeclaration", + "scope": 15083, + "src": "18444:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15068, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "18444:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "18422:39:5" + }, + "returnParameters": { + "id": 15071, + "nodeType": "ParameterList", + "parameters": [], + "src": "18476:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15103, + "nodeType": "FunctionDefinition", + "src": "18579:152:5", + "body": { + "id": 15102, + "nodeType": "Block", + "src": "18636:95:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c29", + "id": 15095, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18686:24:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + "value": "log(address,bool,bool)" + }, + { + "id": 15096, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15085, + "src": "18712:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15097, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15087, + "src": "18716:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15098, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15089, + "src": "18720:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb830c92a079b46f3abcb83e519f578cffe7387941b6885067265feec096d279", + "typeString": "literal_string \"log(address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15093, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18662:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15094, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18662:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18662:61:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15092, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18646:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15100, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18646:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15101, + "nodeType": "ExpressionStatement", + "src": "18646:78:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18588:3:5", + "parameters": { + "id": 15090, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15085, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18600:2:5", + "nodeType": "VariableDeclaration", + "scope": 15103, + "src": "18592:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15084, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18592:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15087, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18609:2:5", + "nodeType": "VariableDeclaration", + "scope": 15103, + "src": "18604:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15086, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18604:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15089, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18618:2:5", + "nodeType": "VariableDeclaration", + "scope": 15103, + "src": "18613:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15088, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18613:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "18591:30:5" + }, + "returnParameters": { + "id": 15091, + "nodeType": "ParameterList", + "parameters": [], + "src": "18636:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15123, + "nodeType": "FunctionDefinition", + "src": "18737:158:5", + "body": { + "id": 15122, + "nodeType": "Block", + "src": "18797:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c6164647265737329", + "id": 15115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18847:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + "value": "log(address,bool,address)" + }, + { + "id": 15116, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15105, + "src": "18876:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15117, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15107, + "src": "18880:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15118, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15109, + "src": "18884:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f11699ed537119f000a51ba9fbd5bb55b3990a1a718acbe99659bd1bc84dc18d", + "typeString": "literal_string \"log(address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18823:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18823:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18823:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15112, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18807:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18807:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15121, + "nodeType": "ExpressionStatement", + "src": "18807:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18746:3:5", + "parameters": { + "id": 15110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15105, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18758:2:5", + "nodeType": "VariableDeclaration", + "scope": 15123, + "src": "18750:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18750:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15107, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18767:2:5", + "nodeType": "VariableDeclaration", + "scope": 15123, + "src": "18762:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15106, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18762:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15109, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18779:2:5", + "nodeType": "VariableDeclaration", + "scope": 15123, + "src": "18771:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18771:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "18749:33:5" + }, + "returnParameters": { + "id": 15111, + "nodeType": "ParameterList", + "parameters": [], + "src": "18797:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15143, + "nodeType": "FunctionDefinition", + "src": "18901:164:5", + "body": { + "id": 15142, + "nodeType": "Block", + "src": "18964:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e7432353629", + "id": 15135, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19014:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_17fe6185890336f35fbbd1b2962ba4f7207a4a65eb5b7443a7be8a152af930a4", + "typeString": "literal_string \"log(address,address,uint256)\"" + }, + "value": "log(address,address,uint256)" + }, + { + "id": 15136, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15125, + "src": "19046:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15137, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15127, + "src": "19050:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15138, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15129, + "src": "19054:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_17fe6185890336f35fbbd1b2962ba4f7207a4a65eb5b7443a7be8a152af930a4", + "typeString": "literal_string \"log(address,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15133, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18990:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15134, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "18990:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18990:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15132, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "18974:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18974:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15141, + "nodeType": "ExpressionStatement", + "src": "18974:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "18910:3:5", + "parameters": { + "id": 15130, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15125, + "mutability": "mutable", + "name": "p0", + "nameLocation": "18922:2:5", + "nodeType": "VariableDeclaration", + "scope": 15143, + "src": "18914:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15124, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18914:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15127, + "mutability": "mutable", + "name": "p1", + "nameLocation": "18934:2:5", + "nodeType": "VariableDeclaration", + "scope": 15143, + "src": "18926:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "18926:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15129, + "mutability": "mutable", + "name": "p2", + "nameLocation": "18946:2:5", + "nodeType": "VariableDeclaration", + "scope": 15143, + "src": "18938:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15128, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18938:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "18913:36:5" + }, + "returnParameters": { + "id": 15131, + "nodeType": "ParameterList", + "parameters": [], + "src": "18964:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15163, + "nodeType": "FunctionDefinition", + "src": "19071:169:5", + "body": { + "id": 15162, + "nodeType": "Block", + "src": "19140:100:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e6729", + "id": 15155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19190:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + "value": "log(address,address,string)" + }, + { + "id": 15156, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15145, + "src": "19221:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15157, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15147, + "src": "19225:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15158, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15149, + "src": "19229:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_007150be50a4671a6be318012e9cd2eabb1e1bc8869b45c34abbaa04d81c8eee", + "typeString": "literal_string \"log(address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19166:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19166:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15159, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19166:66:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15152, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "19150:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15160, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19150:83:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15161, + "nodeType": "ExpressionStatement", + "src": "19150:83:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19080:3:5", + "parameters": { + "id": 15150, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15145, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19092:2:5", + "nodeType": "VariableDeclaration", + "scope": 15163, + "src": "19084:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15144, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19084:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15147, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19104:2:5", + "nodeType": "VariableDeclaration", + "scope": 15163, + "src": "19096:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15146, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19096:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15149, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19122:2:5", + "nodeType": "VariableDeclaration", + "scope": 15163, + "src": "19108:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15148, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19108:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19083:42:5" + }, + "returnParameters": { + "id": 15151, + "nodeType": "ParameterList", + "parameters": [], + "src": "19140:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15183, + "nodeType": "FunctionDefinition", + "src": "19246:158:5", + "body": { + "id": 15182, + "nodeType": "Block", + "src": "19306:98:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c29", + "id": 15175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19356:27:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + "value": "log(address,address,bool)" + }, + { + "id": 15176, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15165, + "src": "19385:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15177, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15167, + "src": "19389:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15178, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15169, + "src": "19393:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f2a6628622808c8bbef4f3e513ab11e708a8f5073988f2f7988e111aa26586dc", + "typeString": "literal_string \"log(address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15173, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19332:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19332:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19332:64:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15172, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "19316:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19316:81:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15181, + "nodeType": "ExpressionStatement", + "src": "19316:81:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19255:3:5", + "parameters": { + "id": 15170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15165, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19267:2:5", + "nodeType": "VariableDeclaration", + "scope": 15183, + "src": "19259:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19259:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15167, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19279:2:5", + "nodeType": "VariableDeclaration", + "scope": 15183, + "src": "19271:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15166, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19271:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15169, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19288:2:5", + "nodeType": "VariableDeclaration", + "scope": 15183, + "src": "19283:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "19283:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19258:33:5" + }, + "returnParameters": { + "id": 15171, + "nodeType": "ParameterList", + "parameters": [], + "src": "19306:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15203, + "nodeType": "FunctionDefinition", + "src": "19410:164:5", + "body": { + "id": 15202, + "nodeType": "Block", + "src": "19473:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c6164647265737329", + "id": 15195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19523:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + "value": "log(address,address,address)" + }, + { + "id": 15196, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15185, + "src": "19555:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15197, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15187, + "src": "19559:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15198, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15189, + "src": "19563:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_018c84c25fb680b5bcd4e1ab1848682497c9dd3b635564a91c36ce3d1414c830", + "typeString": "literal_string \"log(address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15193, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19499:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19499:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15199, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19499:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15192, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "19483:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19483:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15201, + "nodeType": "ExpressionStatement", + "src": "19483:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19419:3:5", + "parameters": { + "id": 15190, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15185, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19431:2:5", + "nodeType": "VariableDeclaration", + "scope": 15203, + "src": "19423:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15184, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19423:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15187, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19443:2:5", + "nodeType": "VariableDeclaration", + "scope": 15203, + "src": "19435:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15186, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19435:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15189, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19455:2:5", + "nodeType": "VariableDeclaration", + "scope": 15203, + "src": "19447:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15188, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19447:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19422:36:5" + }, + "returnParameters": { + "id": 15191, + "nodeType": "ParameterList", + "parameters": [], + "src": "19473:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15226, + "nodeType": "FunctionDefinition", + "src": "19580:188:5", + "body": { + "id": 15225, + "nodeType": "Block", + "src": "19655:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c75696e7432353629", + "id": 15217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19705:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_193fb8009d4d1e3c22da0dd831b1e3aed72b8cabd1ebf3967b4ab3c2bbcf1c4f", + "typeString": "literal_string \"log(uint256,uint256,uint256,uint256)\"" + }, + "value": "log(uint256,uint256,uint256,uint256)" + }, + { + "id": 15218, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15205, + "src": "19745:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15219, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15207, + "src": "19749:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15220, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15209, + "src": "19753:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15221, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15211, + "src": "19757:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_193fb8009d4d1e3c22da0dd831b1e3aed72b8cabd1ebf3967b4ab3c2bbcf1c4f", + "typeString": "literal_string \"log(uint256,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15215, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19681:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19681:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15222, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19681:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15214, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "19665:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19665:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15224, + "nodeType": "ExpressionStatement", + "src": "19665:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19589:3:5", + "parameters": { + "id": 15212, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15205, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19601:2:5", + "nodeType": "VariableDeclaration", + "scope": 15226, + "src": "19593:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15204, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19593:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15207, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19613:2:5", + "nodeType": "VariableDeclaration", + "scope": 15226, + "src": "19605:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19605:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15209, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19625:2:5", + "nodeType": "VariableDeclaration", + "scope": 15226, + "src": "19617:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15208, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19617:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15211, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19637:2:5", + "nodeType": "VariableDeclaration", + "scope": 15226, + "src": "19629:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15210, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19629:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "19592:48:5" + }, + "returnParameters": { + "id": 15213, + "nodeType": "ParameterList", + "parameters": [], + "src": "19655:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15249, + "nodeType": "FunctionDefinition", + "src": "19774:193:5", + "body": { + "id": 15248, + "nodeType": "Block", + "src": "19855:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c737472696e6729", + "id": 15240, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19905:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_59cfcbe3e387f57023dcccd8733484dcb5a23a41a25c4015c01a4e8d3520c4ef", + "typeString": "literal_string \"log(uint256,uint256,uint256,string)\"" + }, + "value": "log(uint256,uint256,uint256,string)" + }, + { + "id": 15241, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15228, + "src": "19944:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15242, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15230, + "src": "19948:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15243, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15232, + "src": "19952:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15244, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15234, + "src": "19956:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_59cfcbe3e387f57023dcccd8733484dcb5a23a41a25c4015c01a4e8d3520c4ef", + "typeString": "literal_string \"log(uint256,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15238, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19881:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15239, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "19881:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19881:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15237, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "19865:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19865:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15247, + "nodeType": "ExpressionStatement", + "src": "19865:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19783:3:5", + "parameters": { + "id": 15235, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15228, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19795:2:5", + "nodeType": "VariableDeclaration", + "scope": 15249, + "src": "19787:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15227, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19787:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15230, + "mutability": "mutable", + "name": "p1", + "nameLocation": "19807:2:5", + "nodeType": "VariableDeclaration", + "scope": 15249, + "src": "19799:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19799:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15232, + "mutability": "mutable", + "name": "p2", + "nameLocation": "19819:2:5", + "nodeType": "VariableDeclaration", + "scope": 15249, + "src": "19811:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15231, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19811:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15234, + "mutability": "mutable", + "name": "p3", + "nameLocation": "19837:2:5", + "nodeType": "VariableDeclaration", + "scope": 15249, + "src": "19823:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15233, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19823:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19786:54:5" + }, + "returnParameters": { + "id": 15236, + "nodeType": "ParameterList", + "parameters": [], + "src": "19855:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15272, + "nodeType": "FunctionDefinition", + "src": "19973:182:5", + "body": { + "id": 15271, + "nodeType": "Block", + "src": "20045:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c626f6f6c29", + "id": 15263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20095:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c598d18505e9c7404a061484d6144251d0ef342167a57ace85723d498abac8e3", + "typeString": "literal_string \"log(uint256,uint256,uint256,bool)\"" + }, + "value": "log(uint256,uint256,uint256,bool)" + }, + { + "id": 15264, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15251, + "src": "20132:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15265, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15253, + "src": "20136:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15266, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15255, + "src": "20140:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15267, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15257, + "src": "20144:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c598d18505e9c7404a061484d6144251d0ef342167a57ace85723d498abac8e3", + "typeString": "literal_string \"log(uint256,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15261, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20071:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20071:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20071:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15260, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "20055:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20055:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15270, + "nodeType": "ExpressionStatement", + "src": "20055:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "19982:3:5", + "parameters": { + "id": 15258, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15251, + "mutability": "mutable", + "name": "p0", + "nameLocation": "19994:2:5", + "nodeType": "VariableDeclaration", + "scope": 15272, + "src": "19986:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15250, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19986:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15253, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20006:2:5", + "nodeType": "VariableDeclaration", + "scope": 15272, + "src": "19998:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19998:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15255, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20018:2:5", + "nodeType": "VariableDeclaration", + "scope": 15272, + "src": "20010:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15254, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20010:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15257, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20027:2:5", + "nodeType": "VariableDeclaration", + "scope": 15272, + "src": "20022:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15256, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20022:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "19985:45:5" + }, + "returnParameters": { + "id": 15259, + "nodeType": "ParameterList", + "parameters": [], + "src": "20045:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15295, + "nodeType": "FunctionDefinition", + "src": "20161:188:5", + "body": { + "id": 15294, + "nodeType": "Block", + "src": "20236:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c75696e743235362c6164647265737329", + "id": 15286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20286:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fa8185afaca325eb459625959e5610b99e97bbcba8d5834d7632610b4f237c79", + "typeString": "literal_string \"log(uint256,uint256,uint256,address)\"" + }, + "value": "log(uint256,uint256,uint256,address)" + }, + { + "id": 15287, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15274, + "src": "20326:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15288, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15276, + "src": "20330:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15289, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15278, + "src": "20334:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15290, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15280, + "src": "20338:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fa8185afaca325eb459625959e5610b99e97bbcba8d5834d7632610b4f237c79", + "typeString": "literal_string \"log(uint256,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15284, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20262:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20262:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15291, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20262:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15283, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "20246:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20246:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15293, + "nodeType": "ExpressionStatement", + "src": "20246:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20170:3:5", + "parameters": { + "id": 15281, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15274, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20182:2:5", + "nodeType": "VariableDeclaration", + "scope": 15295, + "src": "20174:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15273, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20174:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15276, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20194:2:5", + "nodeType": "VariableDeclaration", + "scope": 15295, + "src": "20186:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15275, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20186:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15278, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20206:2:5", + "nodeType": "VariableDeclaration", + "scope": 15295, + "src": "20198:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15277, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20198:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15280, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20218:2:5", + "nodeType": "VariableDeclaration", + "scope": 15295, + "src": "20210:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15279, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20210:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20173:48:5" + }, + "returnParameters": { + "id": 15282, + "nodeType": "ParameterList", + "parameters": [], + "src": "20236:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15318, + "nodeType": "FunctionDefinition", + "src": "20355:193:5", + "body": { + "id": 15317, + "nodeType": "Block", + "src": "20436:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c75696e7432353629", + "id": 15309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20486:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5da297eb5acf47b1a9c0089c080d654cc07f2a8c9aa94fc68af26a6405cde114", + "typeString": "literal_string \"log(uint256,uint256,string,uint256)\"" + }, + "value": "log(uint256,uint256,string,uint256)" + }, + { + "id": 15310, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15297, + "src": "20525:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15311, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15299, + "src": "20529:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15312, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15301, + "src": "20533:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15313, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15303, + "src": "20537:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5da297eb5acf47b1a9c0089c080d654cc07f2a8c9aa94fc68af26a6405cde114", + "typeString": "literal_string \"log(uint256,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15307, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20462:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15308, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20462:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20462:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15306, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "20446:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20446:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15316, + "nodeType": "ExpressionStatement", + "src": "20446:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20364:3:5", + "parameters": { + "id": 15304, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15297, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20376:2:5", + "nodeType": "VariableDeclaration", + "scope": 15318, + "src": "20368:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15296, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20368:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15299, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20388:2:5", + "nodeType": "VariableDeclaration", + "scope": 15318, + "src": "20380:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15298, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20380:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15301, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20406:2:5", + "nodeType": "VariableDeclaration", + "scope": 15318, + "src": "20392:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15300, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20392:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15303, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20418:2:5", + "nodeType": "VariableDeclaration", + "scope": 15318, + "src": "20410:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15302, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20410:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20367:54:5" + }, + "returnParameters": { + "id": 15305, + "nodeType": "ParameterList", + "parameters": [], + "src": "20436:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15341, + "nodeType": "FunctionDefinition", + "src": "20554:198:5", + "body": { + "id": 15340, + "nodeType": "Block", + "src": "20641:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c737472696e6729", + "id": 15332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20691:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_27d8afd2525217fff7302dbf79acc81edc09cb300d94f2503a4fb8a8115910e0", + "typeString": "literal_string \"log(uint256,uint256,string,string)\"" + }, + "value": "log(uint256,uint256,string,string)" + }, + { + "id": 15333, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15320, + "src": "20729:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15334, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15322, + "src": "20733:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15335, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15324, + "src": "20737:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15336, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15326, + "src": "20741:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_27d8afd2525217fff7302dbf79acc81edc09cb300d94f2503a4fb8a8115910e0", + "typeString": "literal_string \"log(uint256,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15330, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20667:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15331, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20667:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15337, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20667:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15329, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "20651:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20651:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15339, + "nodeType": "ExpressionStatement", + "src": "20651:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20563:3:5", + "parameters": { + "id": 15327, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15320, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20575:2:5", + "nodeType": "VariableDeclaration", + "scope": 15341, + "src": "20567:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15319, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20567:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15322, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20587:2:5", + "nodeType": "VariableDeclaration", + "scope": 15341, + "src": "20579:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15321, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20579:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15324, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20605:2:5", + "nodeType": "VariableDeclaration", + "scope": 15341, + "src": "20591:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15323, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20591:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15326, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20623:2:5", + "nodeType": "VariableDeclaration", + "scope": 15341, + "src": "20609:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15325, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20609:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "20566:60:5" + }, + "returnParameters": { + "id": 15328, + "nodeType": "ParameterList", + "parameters": [], + "src": "20641:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15364, + "nodeType": "FunctionDefinition", + "src": "20758:187:5", + "body": { + "id": 15363, + "nodeType": "Block", + "src": "20836:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c626f6f6c29", + "id": 15355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "20886:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7af6ab2578caf14043420c6b292dcb787d09d31b13365d7673f201f9b2e310c9", + "typeString": "literal_string \"log(uint256,uint256,string,bool)\"" + }, + "value": "log(uint256,uint256,string,bool)" + }, + { + "id": 15356, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15343, + "src": "20922:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15357, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15345, + "src": "20926:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15358, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15347, + "src": "20930:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15359, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15349, + "src": "20934:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7af6ab2578caf14043420c6b292dcb787d09d31b13365d7673f201f9b2e310c9", + "typeString": "literal_string \"log(uint256,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15353, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "20862:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "20862:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20862:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15352, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "20846:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20846:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15362, + "nodeType": "ExpressionStatement", + "src": "20846:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20767:3:5", + "parameters": { + "id": 15350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15343, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20779:2:5", + "nodeType": "VariableDeclaration", + "scope": 15364, + "src": "20771:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15342, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20771:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15345, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20791:2:5", + "nodeType": "VariableDeclaration", + "scope": 15364, + "src": "20783:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15344, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20783:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15347, + "mutability": "mutable", + "name": "p2", + "nameLocation": "20809:2:5", + "nodeType": "VariableDeclaration", + "scope": 15364, + "src": "20795:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15346, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20795:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15349, + "mutability": "mutable", + "name": "p3", + "nameLocation": "20818:2:5", + "nodeType": "VariableDeclaration", + "scope": 15364, + "src": "20813:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15348, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20813:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20770:51:5" + }, + "returnParameters": { + "id": 15351, + "nodeType": "ParameterList", + "parameters": [], + "src": "20836:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15387, + "nodeType": "FunctionDefinition", + "src": "20951:193:5", + "body": { + "id": 15386, + "nodeType": "Block", + "src": "21032:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c737472696e672c6164647265737329", + "id": 15378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21082:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42d21db701843c064ab7fb7cddd0cda130fcc29c7289dd90519dfea1322b1a53", + "typeString": "literal_string \"log(uint256,uint256,string,address)\"" + }, + "value": "log(uint256,uint256,string,address)" + }, + { + "id": 15379, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15366, + "src": "21121:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15380, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15368, + "src": "21125:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15381, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15370, + "src": "21129:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15382, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15372, + "src": "21133:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42d21db701843c064ab7fb7cddd0cda130fcc29c7289dd90519dfea1322b1a53", + "typeString": "literal_string \"log(uint256,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15376, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21058:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15377, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21058:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21058:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15375, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21042:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21042:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15385, + "nodeType": "ExpressionStatement", + "src": "21042:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "20960:3:5", + "parameters": { + "id": 15373, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15366, + "mutability": "mutable", + "name": "p0", + "nameLocation": "20972:2:5", + "nodeType": "VariableDeclaration", + "scope": 15387, + "src": "20964:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15365, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20964:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15368, + "mutability": "mutable", + "name": "p1", + "nameLocation": "20984:2:5", + "nodeType": "VariableDeclaration", + "scope": 15387, + "src": "20976:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20976:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15370, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21002:2:5", + "nodeType": "VariableDeclaration", + "scope": 15387, + "src": "20988:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15369, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "20988:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15372, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21014:2:5", + "nodeType": "VariableDeclaration", + "scope": 15387, + "src": "21006:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15371, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21006:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20963:54:5" + }, + "returnParameters": { + "id": 15374, + "nodeType": "ParameterList", + "parameters": [], + "src": "21032:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15410, + "nodeType": "FunctionDefinition", + "src": "21150:182:5", + "body": { + "id": 15409, + "nodeType": "Block", + "src": "21222:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c75696e7432353629", + "id": 15401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21272:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb7f6fd2c2005d3f08b2528135265cced621d1abf62716b05a9b62bc732577fd", + "typeString": "literal_string \"log(uint256,uint256,bool,uint256)\"" + }, + "value": "log(uint256,uint256,bool,uint256)" + }, + { + "id": 15402, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15389, + "src": "21309:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15403, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15391, + "src": "21313:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15404, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15393, + "src": "21317:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15405, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15395, + "src": "21321:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb7f6fd2c2005d3f08b2528135265cced621d1abf62716b05a9b62bc732577fd", + "typeString": "literal_string \"log(uint256,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15399, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21248:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21248:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21248:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15398, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21232:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21232:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15408, + "nodeType": "ExpressionStatement", + "src": "21232:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21159:3:5", + "parameters": { + "id": 15396, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15389, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21171:2:5", + "nodeType": "VariableDeclaration", + "scope": 15410, + "src": "21163:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15388, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21163:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15391, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21183:2:5", + "nodeType": "VariableDeclaration", + "scope": 15410, + "src": "21175:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15390, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21175:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15393, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21192:2:5", + "nodeType": "VariableDeclaration", + "scope": 15410, + "src": "21187:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15392, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21187:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15395, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21204:2:5", + "nodeType": "VariableDeclaration", + "scope": 15410, + "src": "21196:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15394, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21196:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21162:45:5" + }, + "returnParameters": { + "id": 15397, + "nodeType": "ParameterList", + "parameters": [], + "src": "21222:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15433, + "nodeType": "FunctionDefinition", + "src": "21338:187:5", + "body": { + "id": 15432, + "nodeType": "Block", + "src": "21416:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c737472696e6729", + "id": 15424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21466:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5b4fc99467445b3de47079da2d48b3031bb8d3adcbee781cbdca55596f1414a", + "typeString": "literal_string \"log(uint256,uint256,bool,string)\"" + }, + "value": "log(uint256,uint256,bool,string)" + }, + { + "id": 15425, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15412, + "src": "21502:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15426, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15414, + "src": "21506:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15427, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15416, + "src": "21510:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15428, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15418, + "src": "21514:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5b4fc99467445b3de47079da2d48b3031bb8d3adcbee781cbdca55596f1414a", + "typeString": "literal_string \"log(uint256,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15422, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21442:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15423, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21442:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21442:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15421, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21426:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21426:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15431, + "nodeType": "ExpressionStatement", + "src": "21426:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21347:3:5", + "parameters": { + "id": 15419, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15412, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21359:2:5", + "nodeType": "VariableDeclaration", + "scope": 15433, + "src": "21351:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15411, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21351:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15414, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21371:2:5", + "nodeType": "VariableDeclaration", + "scope": 15433, + "src": "21363:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15413, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21363:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15416, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21380:2:5", + "nodeType": "VariableDeclaration", + "scope": 15433, + "src": "21375:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15415, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21375:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15418, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21398:2:5", + "nodeType": "VariableDeclaration", + "scope": 15433, + "src": "21384:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15417, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "21384:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "21350:51:5" + }, + "returnParameters": { + "id": 15420, + "nodeType": "ParameterList", + "parameters": [], + "src": "21416:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15456, + "nodeType": "FunctionDefinition", + "src": "21531:176:5", + "body": { + "id": 15455, + "nodeType": "Block", + "src": "21600:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c626f6f6c29", + "id": 15447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21650:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ab085ae680de5118cde80cb5e8cb1f7383786238f1394e82b7ab82553a0dd7fe", + "typeString": "literal_string \"log(uint256,uint256,bool,bool)\"" + }, + "value": "log(uint256,uint256,bool,bool)" + }, + { + "id": 15448, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15435, + "src": "21684:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15449, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15437, + "src": "21688:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15450, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15439, + "src": "21692:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15451, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15441, + "src": "21696:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ab085ae680de5118cde80cb5e8cb1f7383786238f1394e82b7ab82553a0dd7fe", + "typeString": "literal_string \"log(uint256,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15445, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21626:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15446, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21626:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21626:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15444, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21610:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21610:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15454, + "nodeType": "ExpressionStatement", + "src": "21610:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21540:3:5", + "parameters": { + "id": 15442, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15435, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21552:2:5", + "nodeType": "VariableDeclaration", + "scope": 15456, + "src": "21544:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21544:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15437, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21564:2:5", + "nodeType": "VariableDeclaration", + "scope": 15456, + "src": "21556:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21556:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15439, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21573:2:5", + "nodeType": "VariableDeclaration", + "scope": 15456, + "src": "21568:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15438, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21568:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15441, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21582:2:5", + "nodeType": "VariableDeclaration", + "scope": 15456, + "src": "21577:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15440, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21577:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "21543:42:5" + }, + "returnParameters": { + "id": 15443, + "nodeType": "ParameterList", + "parameters": [], + "src": "21600:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15479, + "nodeType": "FunctionDefinition", + "src": "21713:182:5", + "body": { + "id": 15478, + "nodeType": "Block", + "src": "21785:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c626f6f6c2c6164647265737329", + "id": 15470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21835:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9a816a83f59c7e2fc96bb179b1fa8fd5307277d58bad9d6b835a280d4474fc1b", + "typeString": "literal_string \"log(uint256,uint256,bool,address)\"" + }, + "value": "log(uint256,uint256,bool,address)" + }, + { + "id": 15471, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15458, + "src": "21872:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15472, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15460, + "src": "21876:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15473, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15462, + "src": "21880:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15474, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15464, + "src": "21884:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9a816a83f59c7e2fc96bb179b1fa8fd5307277d58bad9d6b835a280d4474fc1b", + "typeString": "literal_string \"log(uint256,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15468, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21811:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "21811:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15475, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21811:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15467, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21795:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21795:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15477, + "nodeType": "ExpressionStatement", + "src": "21795:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21722:3:5", + "parameters": { + "id": 15465, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15458, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21734:2:5", + "nodeType": "VariableDeclaration", + "scope": 15479, + "src": "21726:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15457, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21726:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15460, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21746:2:5", + "nodeType": "VariableDeclaration", + "scope": 15479, + "src": "21738:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15459, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21738:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15462, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21755:2:5", + "nodeType": "VariableDeclaration", + "scope": 15479, + "src": "21750:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15461, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "21750:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15464, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21767:2:5", + "nodeType": "VariableDeclaration", + "scope": 15479, + "src": "21759:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15463, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21759:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "21725:45:5" + }, + "returnParameters": { + "id": 15466, + "nodeType": "ParameterList", + "parameters": [], + "src": "21785:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15502, + "nodeType": "FunctionDefinition", + "src": "21901:188:5", + "body": { + "id": 15501, + "nodeType": "Block", + "src": "21976:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c75696e7432353629", + "id": 15493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22026:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88f6e4b2e9fd1797748b31e8b1564d27784c7a0b5de7a75df225524205baab36", + "typeString": "literal_string \"log(uint256,uint256,address,uint256)\"" + }, + "value": "log(uint256,uint256,address,uint256)" + }, + { + "id": 15494, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15481, + "src": "22066:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15495, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15483, + "src": "22070:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15496, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15485, + "src": "22074:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15497, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15487, + "src": "22078:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88f6e4b2e9fd1797748b31e8b1564d27784c7a0b5de7a75df225524205baab36", + "typeString": "literal_string \"log(uint256,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22002:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22002:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15498, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22002:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15490, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "21986:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21986:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15500, + "nodeType": "ExpressionStatement", + "src": "21986:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "21910:3:5", + "parameters": { + "id": 15488, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15481, + "mutability": "mutable", + "name": "p0", + "nameLocation": "21922:2:5", + "nodeType": "VariableDeclaration", + "scope": 15502, + "src": "21914:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15480, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21914:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15483, + "mutability": "mutable", + "name": "p1", + "nameLocation": "21934:2:5", + "nodeType": "VariableDeclaration", + "scope": 15502, + "src": "21926:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15482, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21926:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15485, + "mutability": "mutable", + "name": "p2", + "nameLocation": "21946:2:5", + "nodeType": "VariableDeclaration", + "scope": 15502, + "src": "21938:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15484, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21938:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15487, + "mutability": "mutable", + "name": "p3", + "nameLocation": "21958:2:5", + "nodeType": "VariableDeclaration", + "scope": 15502, + "src": "21950:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15486, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21950:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "21913:48:5" + }, + "returnParameters": { + "id": 15489, + "nodeType": "ParameterList", + "parameters": [], + "src": "21976:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15525, + "nodeType": "FunctionDefinition", + "src": "22095:193:5", + "body": { + "id": 15524, + "nodeType": "Block", + "src": "22176:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c737472696e6729", + "id": 15516, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22226:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6cde40b8d4f88da65710732f1ce432c86447f486bf713e5763c0ab174df12f40", + "typeString": "literal_string \"log(uint256,uint256,address,string)\"" + }, + "value": "log(uint256,uint256,address,string)" + }, + { + "id": 15517, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15504, + "src": "22265:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15518, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15506, + "src": "22269:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15519, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15508, + "src": "22273:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15520, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15510, + "src": "22277:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6cde40b8d4f88da65710732f1ce432c86447f486bf713e5763c0ab174df12f40", + "typeString": "literal_string \"log(uint256,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15514, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22202:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15515, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22202:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15521, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22202:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15513, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "22186:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22186:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15523, + "nodeType": "ExpressionStatement", + "src": "22186:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22104:3:5", + "parameters": { + "id": 15511, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15504, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22116:2:5", + "nodeType": "VariableDeclaration", + "scope": 15525, + "src": "22108:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15503, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22108:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15506, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22128:2:5", + "nodeType": "VariableDeclaration", + "scope": 15525, + "src": "22120:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15505, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22120:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15508, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22140:2:5", + "nodeType": "VariableDeclaration", + "scope": 15525, + "src": "22132:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15507, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22132:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15510, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22158:2:5", + "nodeType": "VariableDeclaration", + "scope": 15525, + "src": "22144:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15509, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22144:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "22107:54:5" + }, + "returnParameters": { + "id": 15512, + "nodeType": "ParameterList", + "parameters": [], + "src": "22176:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15548, + "nodeType": "FunctionDefinition", + "src": "22294:182:5", + "body": { + "id": 15547, + "nodeType": "Block", + "src": "22366:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c626f6f6c29", + "id": 15539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22416:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_15cac47617578377cd39f9593e7bb3ffa0e284336b9741dcc2c4151a93e1b201", + "typeString": "literal_string \"log(uint256,uint256,address,bool)\"" + }, + "value": "log(uint256,uint256,address,bool)" + }, + { + "id": 15540, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15527, + "src": "22453:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15541, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15529, + "src": "22457:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15542, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15531, + "src": "22461:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15543, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15533, + "src": "22465:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_15cac47617578377cd39f9593e7bb3ffa0e284336b9741dcc2c4151a93e1b201", + "typeString": "literal_string \"log(uint256,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15537, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22392:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22392:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22392:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15536, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "22376:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22376:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15546, + "nodeType": "ExpressionStatement", + "src": "22376:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22303:3:5", + "parameters": { + "id": 15534, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15527, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22315:2:5", + "nodeType": "VariableDeclaration", + "scope": 15548, + "src": "22307:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15526, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22307:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15529, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22327:2:5", + "nodeType": "VariableDeclaration", + "scope": 15548, + "src": "22319:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15528, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22319:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15531, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22339:2:5", + "nodeType": "VariableDeclaration", + "scope": 15548, + "src": "22331:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15530, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22331:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15533, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22348:2:5", + "nodeType": "VariableDeclaration", + "scope": 15548, + "src": "22343:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15532, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22343:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22306:45:5" + }, + "returnParameters": { + "id": 15535, + "nodeType": "ParameterList", + "parameters": [], + "src": "22366:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15571, + "nodeType": "FunctionDefinition", + "src": "22482:188:5", + "body": { + "id": 15570, + "nodeType": "Block", + "src": "22557:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c75696e743235362c616464726573732c6164647265737329", + "id": 15562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22607:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_56a5d1b1d2f0613b93371fc2b5ec91f6c2ba1375e1e4ff59b5061b56ca88e88d", + "typeString": "literal_string \"log(uint256,uint256,address,address)\"" + }, + "value": "log(uint256,uint256,address,address)" + }, + { + "id": 15563, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15550, + "src": "22647:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15564, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15552, + "src": "22651:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15565, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15554, + "src": "22655:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15566, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15556, + "src": "22659:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_56a5d1b1d2f0613b93371fc2b5ec91f6c2ba1375e1e4ff59b5061b56ca88e88d", + "typeString": "literal_string \"log(uint256,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15560, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22583:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15561, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22583:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22583:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15559, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "22567:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22567:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15569, + "nodeType": "ExpressionStatement", + "src": "22567:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22491:3:5", + "parameters": { + "id": 15557, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15550, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22503:2:5", + "nodeType": "VariableDeclaration", + "scope": 15571, + "src": "22495:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15549, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22495:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15552, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22515:2:5", + "nodeType": "VariableDeclaration", + "scope": 15571, + "src": "22507:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15551, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22507:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15554, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22527:2:5", + "nodeType": "VariableDeclaration", + "scope": 15571, + "src": "22519:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15553, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22519:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15556, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22539:2:5", + "nodeType": "VariableDeclaration", + "scope": 15571, + "src": "22531:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15555, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22531:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22494:48:5" + }, + "returnParameters": { + "id": 15558, + "nodeType": "ParameterList", + "parameters": [], + "src": "22557:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15594, + "nodeType": "FunctionDefinition", + "src": "22676:193:5", + "body": { + "id": 15593, + "nodeType": "Block", + "src": "22757:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c75696e7432353629", + "id": 15585, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22807:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82c25b74e3ddb6ea40e867e0a41af8848bdc6a88fd5e365497c46917573fd66f", + "typeString": "literal_string \"log(uint256,string,uint256,uint256)\"" + }, + "value": "log(uint256,string,uint256,uint256)" + }, + { + "id": 15586, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15573, + "src": "22846:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15587, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15575, + "src": "22850:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15588, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15577, + "src": "22854:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15589, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15579, + "src": "22858:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_82c25b74e3ddb6ea40e867e0a41af8848bdc6a88fd5e365497c46917573fd66f", + "typeString": "literal_string \"log(uint256,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15583, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22783:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22783:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22783:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15582, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "22767:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22767:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15592, + "nodeType": "ExpressionStatement", + "src": "22767:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22685:3:5", + "parameters": { + "id": 15580, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15573, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22697:2:5", + "nodeType": "VariableDeclaration", + "scope": 15594, + "src": "22689:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15572, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22689:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15575, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22715:2:5", + "nodeType": "VariableDeclaration", + "scope": 15594, + "src": "22701:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15574, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22701:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15577, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22727:2:5", + "nodeType": "VariableDeclaration", + "scope": 15594, + "src": "22719:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15576, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22719:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15579, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22739:2:5", + "nodeType": "VariableDeclaration", + "scope": 15594, + "src": "22731:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15578, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22731:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22688:54:5" + }, + "returnParameters": { + "id": 15581, + "nodeType": "ParameterList", + "parameters": [], + "src": "22757:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15617, + "nodeType": "FunctionDefinition", + "src": "22875:198:5", + "body": { + "id": 15616, + "nodeType": "Block", + "src": "22962:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c737472696e6729", + "id": 15608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23012:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b7b914cad3c94167dcd4b5ef970076918e96b3894a20503b7d3f9648bea8aace", + "typeString": "literal_string \"log(uint256,string,uint256,string)\"" + }, + "value": "log(uint256,string,uint256,string)" + }, + { + "id": 15609, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15596, + "src": "23050:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15610, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15598, + "src": "23054:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15611, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15600, + "src": "23058:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15612, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15602, + "src": "23062:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b7b914cad3c94167dcd4b5ef970076918e96b3894a20503b7d3f9648bea8aace", + "typeString": "literal_string \"log(uint256,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15606, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22988:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "22988:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22988:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15605, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "22972:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22972:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15615, + "nodeType": "ExpressionStatement", + "src": "22972:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "22884:3:5", + "parameters": { + "id": 15603, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15596, + "mutability": "mutable", + "name": "p0", + "nameLocation": "22896:2:5", + "nodeType": "VariableDeclaration", + "scope": 15617, + "src": "22888:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15595, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22888:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15598, + "mutability": "mutable", + "name": "p1", + "nameLocation": "22914:2:5", + "nodeType": "VariableDeclaration", + "scope": 15617, + "src": "22900:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15597, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22900:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15600, + "mutability": "mutable", + "name": "p2", + "nameLocation": "22926:2:5", + "nodeType": "VariableDeclaration", + "scope": 15617, + "src": "22918:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15599, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22918:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15602, + "mutability": "mutable", + "name": "p3", + "nameLocation": "22944:2:5", + "nodeType": "VariableDeclaration", + "scope": 15617, + "src": "22930:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15601, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "22930:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "22887:60:5" + }, + "returnParameters": { + "id": 15604, + "nodeType": "ParameterList", + "parameters": [], + "src": "22962:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15640, + "nodeType": "FunctionDefinition", + "src": "23079:187:5", + "body": { + "id": 15639, + "nodeType": "Block", + "src": "23157:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c626f6f6c29", + "id": 15631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23207:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_691a8f74cbf1a313fd1bdfd5dda19feaf4f9deac56f7ca7c4fa6386e5382a03c", + "typeString": "literal_string \"log(uint256,string,uint256,bool)\"" + }, + "value": "log(uint256,string,uint256,bool)" + }, + { + "id": 15632, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15619, + "src": "23243:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15633, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15621, + "src": "23247:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15634, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15623, + "src": "23251:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15635, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15625, + "src": "23255:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_691a8f74cbf1a313fd1bdfd5dda19feaf4f9deac56f7ca7c4fa6386e5382a03c", + "typeString": "literal_string \"log(uint256,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15629, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23183:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15630, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23183:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23183:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15628, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "23167:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23167:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15638, + "nodeType": "ExpressionStatement", + "src": "23167:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23088:3:5", + "parameters": { + "id": 15626, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15619, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23100:2:5", + "nodeType": "VariableDeclaration", + "scope": 15640, + "src": "23092:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15618, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23092:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15621, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23118:2:5", + "nodeType": "VariableDeclaration", + "scope": 15640, + "src": "23104:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15620, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23104:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15623, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23130:2:5", + "nodeType": "VariableDeclaration", + "scope": 15640, + "src": "23122:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15622, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23122:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15625, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23139:2:5", + "nodeType": "VariableDeclaration", + "scope": 15640, + "src": "23134:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15624, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23134:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "23091:51:5" + }, + "returnParameters": { + "id": 15627, + "nodeType": "ParameterList", + "parameters": [], + "src": "23157:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15663, + "nodeType": "FunctionDefinition", + "src": "23272:193:5", + "body": { + "id": 15662, + "nodeType": "Block", + "src": "23353:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c75696e743235362c6164647265737329", + "id": 15654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23403:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b2279b4b3c26cbcd4374acce75e4c447a59a65883d849a72eaa051b3a07ec08", + "typeString": "literal_string \"log(uint256,string,uint256,address)\"" + }, + "value": "log(uint256,string,uint256,address)" + }, + { + "id": 15655, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15642, + "src": "23442:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15656, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15644, + "src": "23446:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15657, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15646, + "src": "23450:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15658, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15648, + "src": "23454:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b2279b4b3c26cbcd4374acce75e4c447a59a65883d849a72eaa051b3a07ec08", + "typeString": "literal_string \"log(uint256,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15652, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23379:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15653, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23379:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23379:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15651, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "23363:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23363:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15661, + "nodeType": "ExpressionStatement", + "src": "23363:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23281:3:5", + "parameters": { + "id": 15649, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15642, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23293:2:5", + "nodeType": "VariableDeclaration", + "scope": 15663, + "src": "23285:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15641, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23285:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15644, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23311:2:5", + "nodeType": "VariableDeclaration", + "scope": 15663, + "src": "23297:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15643, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23297:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15646, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23323:2:5", + "nodeType": "VariableDeclaration", + "scope": 15663, + "src": "23315:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23315:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15648, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23335:2:5", + "nodeType": "VariableDeclaration", + "scope": 15663, + "src": "23327:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15647, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "23327:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "23284:54:5" + }, + "returnParameters": { + "id": 15650, + "nodeType": "ParameterList", + "parameters": [], + "src": "23353:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15686, + "nodeType": "FunctionDefinition", + "src": "23471:198:5", + "body": { + "id": 15685, + "nodeType": "Block", + "src": "23558:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c75696e7432353629", + "id": 15677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23608:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b028c9bd0105e32bab3e2b1b4678f4cd49b1f267c4fcb1899043ad16b67c3dd1", + "typeString": "literal_string \"log(uint256,string,string,uint256)\"" + }, + "value": "log(uint256,string,string,uint256)" + }, + { + "id": 15678, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15665, + "src": "23646:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15679, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15667, + "src": "23650:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15680, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15669, + "src": "23654:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15681, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15671, + "src": "23658:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b028c9bd0105e32bab3e2b1b4678f4cd49b1f267c4fcb1899043ad16b67c3dd1", + "typeString": "literal_string \"log(uint256,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15675, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23584:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15676, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23584:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23584:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15674, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "23568:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23568:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15684, + "nodeType": "ExpressionStatement", + "src": "23568:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23480:3:5", + "parameters": { + "id": 15672, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15665, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23492:2:5", + "nodeType": "VariableDeclaration", + "scope": 15686, + "src": "23484:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15664, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23484:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15667, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23510:2:5", + "nodeType": "VariableDeclaration", + "scope": 15686, + "src": "23496:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15666, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23496:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15669, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23528:2:5", + "nodeType": "VariableDeclaration", + "scope": 15686, + "src": "23514:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15668, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23514:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15671, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23540:2:5", + "nodeType": "VariableDeclaration", + "scope": 15686, + "src": "23532:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23532:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23483:60:5" + }, + "returnParameters": { + "id": 15673, + "nodeType": "ParameterList", + "parameters": [], + "src": "23558:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15709, + "nodeType": "FunctionDefinition", + "src": "23675:203:5", + "body": { + "id": 15708, + "nodeType": "Block", + "src": "23768:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c737472696e6729", + "id": 15700, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23818:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_21ad06836085541851abea445814b5a1baf9d3be52c1169a6570c83010dbea5a", + "typeString": "literal_string \"log(uint256,string,string,string)\"" + }, + "value": "log(uint256,string,string,string)" + }, + { + "id": 15701, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15688, + "src": "23855:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15702, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15690, + "src": "23859:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15703, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15692, + "src": "23863:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15704, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15694, + "src": "23867:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_21ad06836085541851abea445814b5a1baf9d3be52c1169a6570c83010dbea5a", + "typeString": "literal_string \"log(uint256,string,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15698, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23794:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15699, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23794:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23794:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15697, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "23778:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23778:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15707, + "nodeType": "ExpressionStatement", + "src": "23778:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23684:3:5", + "parameters": { + "id": 15695, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15688, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23696:2:5", + "nodeType": "VariableDeclaration", + "scope": 15709, + "src": "23688:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15687, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23688:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15690, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23714:2:5", + "nodeType": "VariableDeclaration", + "scope": 15709, + "src": "23700:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15689, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23700:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15692, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23732:2:5", + "nodeType": "VariableDeclaration", + "scope": 15709, + "src": "23718:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15691, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23718:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15694, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23750:2:5", + "nodeType": "VariableDeclaration", + "scope": 15709, + "src": "23736:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15693, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23736:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "23687:66:5" + }, + "returnParameters": { + "id": 15696, + "nodeType": "ParameterList", + "parameters": [], + "src": "23768:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15732, + "nodeType": "FunctionDefinition", + "src": "23884:192:5", + "body": { + "id": 15731, + "nodeType": "Block", + "src": "23968:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c626f6f6c29", + "id": 15723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24018:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3a6b6bdf3265665181b9a9ab1338c75ebc293704c96a9a669654a5ba9f6d3e9", + "typeString": "literal_string \"log(uint256,string,string,bool)\"" + }, + "value": "log(uint256,string,string,bool)" + }, + { + "id": 15724, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15711, + "src": "24053:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15725, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15713, + "src": "24057:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15726, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15715, + "src": "24061:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15727, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15717, + "src": "24065:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3a6b6bdf3265665181b9a9ab1338c75ebc293704c96a9a669654a5ba9f6d3e9", + "typeString": "literal_string \"log(uint256,string,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15721, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23994:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15722, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "23994:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23994:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15720, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "23978:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23978:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15730, + "nodeType": "ExpressionStatement", + "src": "23978:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "23893:3:5", + "parameters": { + "id": 15718, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15711, + "mutability": "mutable", + "name": "p0", + "nameLocation": "23905:2:5", + "nodeType": "VariableDeclaration", + "scope": 15732, + "src": "23897:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15710, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23897:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15713, + "mutability": "mutable", + "name": "p1", + "nameLocation": "23923:2:5", + "nodeType": "VariableDeclaration", + "scope": 15732, + "src": "23909:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15712, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23909:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15715, + "mutability": "mutable", + "name": "p2", + "nameLocation": "23941:2:5", + "nodeType": "VariableDeclaration", + "scope": 15732, + "src": "23927:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15714, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "23927:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15717, + "mutability": "mutable", + "name": "p3", + "nameLocation": "23950:2:5", + "nodeType": "VariableDeclaration", + "scope": 15732, + "src": "23945:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15716, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "23945:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "23896:57:5" + }, + "returnParameters": { + "id": 15719, + "nodeType": "ParameterList", + "parameters": [], + "src": "23968:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15755, + "nodeType": "FunctionDefinition", + "src": "24082:198:5", + "body": { + "id": 15754, + "nodeType": "Block", + "src": "24169:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c737472696e672c6164647265737329", + "id": 15746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24219:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d583c60265ad086fe6216ef9aea37bf5de1e77bdf9055c734c55781d5f4b81d7", + "typeString": "literal_string \"log(uint256,string,string,address)\"" + }, + "value": "log(uint256,string,string,address)" + }, + { + "id": 15747, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15734, + "src": "24257:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15748, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15736, + "src": "24261:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15749, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15738, + "src": "24265:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15750, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15740, + "src": "24269:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d583c60265ad086fe6216ef9aea37bf5de1e77bdf9055c734c55781d5f4b81d7", + "typeString": "literal_string \"log(uint256,string,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15744, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24195:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15745, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24195:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15751, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24195:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15743, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "24179:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24179:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15753, + "nodeType": "ExpressionStatement", + "src": "24179:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24091:3:5", + "parameters": { + "id": 15741, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15734, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24103:2:5", + "nodeType": "VariableDeclaration", + "scope": 15755, + "src": "24095:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15733, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24095:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15736, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24121:2:5", + "nodeType": "VariableDeclaration", + "scope": 15755, + "src": "24107:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15735, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24107:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15738, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24139:2:5", + "nodeType": "VariableDeclaration", + "scope": 15755, + "src": "24125:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15737, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24125:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15740, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24151:2:5", + "nodeType": "VariableDeclaration", + "scope": 15755, + "src": "24143:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15739, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24143:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24094:60:5" + }, + "returnParameters": { + "id": 15742, + "nodeType": "ParameterList", + "parameters": [], + "src": "24169:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15778, + "nodeType": "FunctionDefinition", + "src": "24286:187:5", + "body": { + "id": 15777, + "nodeType": "Block", + "src": "24364:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c75696e7432353629", + "id": 15769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24414:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf00988004d982e10d8d4fa7f603a1414e3b2b91cdfcf6f72808ca6c3100f96a", + "typeString": "literal_string \"log(uint256,string,bool,uint256)\"" + }, + "value": "log(uint256,string,bool,uint256)" + }, + { + "id": 15770, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15757, + "src": "24450:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15771, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15759, + "src": "24454:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15772, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15761, + "src": "24458:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15773, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15763, + "src": "24462:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf00988004d982e10d8d4fa7f603a1414e3b2b91cdfcf6f72808ca6c3100f96a", + "typeString": "literal_string \"log(uint256,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15767, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24390:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24390:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24390:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15766, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "24374:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24374:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15776, + "nodeType": "ExpressionStatement", + "src": "24374:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24295:3:5", + "parameters": { + "id": 15764, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15757, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24307:2:5", + "nodeType": "VariableDeclaration", + "scope": 15778, + "src": "24299:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15756, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24299:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15759, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24325:2:5", + "nodeType": "VariableDeclaration", + "scope": 15778, + "src": "24311:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15758, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24311:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15761, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24334:2:5", + "nodeType": "VariableDeclaration", + "scope": 15778, + "src": "24329:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15760, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24329:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15763, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24346:2:5", + "nodeType": "VariableDeclaration", + "scope": 15778, + "src": "24338:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15762, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24338:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24298:51:5" + }, + "returnParameters": { + "id": 15765, + "nodeType": "ParameterList", + "parameters": [], + "src": "24364:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15801, + "nodeType": "FunctionDefinition", + "src": "24479:192:5", + "body": { + "id": 15800, + "nodeType": "Block", + "src": "24563:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c737472696e6729", + "id": 15792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24613:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d2d423cdca0e3ae7a0a1a283a67d891c85787b75e0c5291c02d15317d67fe45c", + "typeString": "literal_string \"log(uint256,string,bool,string)\"" + }, + "value": "log(uint256,string,bool,string)" + }, + { + "id": 15793, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15780, + "src": "24648:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15794, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15782, + "src": "24652:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15795, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15784, + "src": "24656:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15796, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15786, + "src": "24660:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d2d423cdca0e3ae7a0a1a283a67d891c85787b75e0c5291c02d15317d67fe45c", + "typeString": "literal_string \"log(uint256,string,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15790, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24589:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15791, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24589:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24589:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15789, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "24573:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24573:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15799, + "nodeType": "ExpressionStatement", + "src": "24573:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24488:3:5", + "parameters": { + "id": 15787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15780, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24500:2:5", + "nodeType": "VariableDeclaration", + "scope": 15801, + "src": "24492:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15779, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24492:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15782, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24518:2:5", + "nodeType": "VariableDeclaration", + "scope": 15801, + "src": "24504:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24504:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15784, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24527:2:5", + "nodeType": "VariableDeclaration", + "scope": 15801, + "src": "24522:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15783, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24522:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15786, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24545:2:5", + "nodeType": "VariableDeclaration", + "scope": 15801, + "src": "24531:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15785, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24531:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "24491:57:5" + }, + "returnParameters": { + "id": 15788, + "nodeType": "ParameterList", + "parameters": [], + "src": "24563:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15824, + "nodeType": "FunctionDefinition", + "src": "24677:181:5", + "body": { + "id": 15823, + "nodeType": "Block", + "src": "24752:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c626f6f6c29", + "id": 15815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24802:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba535d9cec0fb8bbd83e61b83d0f575d149cba6778a192239c1bdc5170053e4f", + "typeString": "literal_string \"log(uint256,string,bool,bool)\"" + }, + "value": "log(uint256,string,bool,bool)" + }, + { + "id": 15816, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15803, + "src": "24835:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15817, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15805, + "src": "24839:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15818, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15807, + "src": "24843:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15819, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15809, + "src": "24847:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ba535d9cec0fb8bbd83e61b83d0f575d149cba6778a192239c1bdc5170053e4f", + "typeString": "literal_string \"log(uint256,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15813, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24778:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15814, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24778:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24778:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15812, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "24762:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24762:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15822, + "nodeType": "ExpressionStatement", + "src": "24762:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24686:3:5", + "parameters": { + "id": 15810, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15803, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24698:2:5", + "nodeType": "VariableDeclaration", + "scope": 15824, + "src": "24690:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15802, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24690:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15805, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24716:2:5", + "nodeType": "VariableDeclaration", + "scope": 15824, + "src": "24702:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15804, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24702:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15807, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24725:2:5", + "nodeType": "VariableDeclaration", + "scope": 15824, + "src": "24720:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15806, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24720:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15809, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24734:2:5", + "nodeType": "VariableDeclaration", + "scope": 15824, + "src": "24729:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15808, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24729:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "24689:48:5" + }, + "returnParameters": { + "id": 15811, + "nodeType": "ParameterList", + "parameters": [], + "src": "24752:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15847, + "nodeType": "FunctionDefinition", + "src": "24864:187:5", + "body": { + "id": 15846, + "nodeType": "Block", + "src": "24942:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c626f6f6c2c6164647265737329", + "id": 15838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24992:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ae2ec581fba979c4f79aae94f13936ff6bb7e283817b2ec0602d9daa028a1550", + "typeString": "literal_string \"log(uint256,string,bool,address)\"" + }, + "value": "log(uint256,string,bool,address)" + }, + { + "id": 15839, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15826, + "src": "25028:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15840, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15828, + "src": "25032:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15841, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15830, + "src": "25036:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15842, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15832, + "src": "25040:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ae2ec581fba979c4f79aae94f13936ff6bb7e283817b2ec0602d9daa028a1550", + "typeString": "literal_string \"log(uint256,string,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15836, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "24968:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15837, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "24968:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24968:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15835, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "24952:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24952:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15845, + "nodeType": "ExpressionStatement", + "src": "24952:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "24873:3:5", + "parameters": { + "id": 15833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15826, + "mutability": "mutable", + "name": "p0", + "nameLocation": "24885:2:5", + "nodeType": "VariableDeclaration", + "scope": 15847, + "src": "24877:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15825, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24877:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15828, + "mutability": "mutable", + "name": "p1", + "nameLocation": "24903:2:5", + "nodeType": "VariableDeclaration", + "scope": 15847, + "src": "24889:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15827, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "24889:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15830, + "mutability": "mutable", + "name": "p2", + "nameLocation": "24912:2:5", + "nodeType": "VariableDeclaration", + "scope": 15847, + "src": "24907:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15829, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "24907:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15832, + "mutability": "mutable", + "name": "p3", + "nameLocation": "24924:2:5", + "nodeType": "VariableDeclaration", + "scope": 15847, + "src": "24916:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15831, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "24916:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "24876:51:5" + }, + "returnParameters": { + "id": 15834, + "nodeType": "ParameterList", + "parameters": [], + "src": "24942:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15870, + "nodeType": "FunctionDefinition", + "src": "25057:193:5", + "body": { + "id": 15869, + "nodeType": "Block", + "src": "25138:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c75696e7432353629", + "id": 15861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25188:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e8d3018d32ee5012095e63c81679b366f06035e83d43be351e9c327886860908", + "typeString": "literal_string \"log(uint256,string,address,uint256)\"" + }, + "value": "log(uint256,string,address,uint256)" + }, + { + "id": 15862, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15849, + "src": "25227:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15863, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15851, + "src": "25231:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15864, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15853, + "src": "25235:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15865, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15855, + "src": "25239:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e8d3018d32ee5012095e63c81679b366f06035e83d43be351e9c327886860908", + "typeString": "literal_string \"log(uint256,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15859, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25164:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15860, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25164:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25164:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15858, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "25148:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25148:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15868, + "nodeType": "ExpressionStatement", + "src": "25148:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25066:3:5", + "parameters": { + "id": 15856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15849, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25078:2:5", + "nodeType": "VariableDeclaration", + "scope": 15870, + "src": "25070:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15848, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25070:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15851, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25096:2:5", + "nodeType": "VariableDeclaration", + "scope": 15870, + "src": "25082:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15850, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25082:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15853, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25108:2:5", + "nodeType": "VariableDeclaration", + "scope": 15870, + "src": "25100:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25100:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15855, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25120:2:5", + "nodeType": "VariableDeclaration", + "scope": 15870, + "src": "25112:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25112:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25069:54:5" + }, + "returnParameters": { + "id": 15857, + "nodeType": "ParameterList", + "parameters": [], + "src": "25138:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15893, + "nodeType": "FunctionDefinition", + "src": "25256:198:5", + "body": { + "id": 15892, + "nodeType": "Block", + "src": "25343:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c737472696e6729", + "id": 15884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25393:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9c3adfa1394c3989d93ade538d03d04b05867057c1dd54721ae2c85f9a1a4720", + "typeString": "literal_string \"log(uint256,string,address,string)\"" + }, + "value": "log(uint256,string,address,string)" + }, + { + "id": 15885, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15872, + "src": "25431:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15886, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15874, + "src": "25435:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15887, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15876, + "src": "25439:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15888, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15878, + "src": "25443:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9c3adfa1394c3989d93ade538d03d04b05867057c1dd54721ae2c85f9a1a4720", + "typeString": "literal_string \"log(uint256,string,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15882, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25369:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15883, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25369:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25369:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15881, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "25353:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25353:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15891, + "nodeType": "ExpressionStatement", + "src": "25353:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25265:3:5", + "parameters": { + "id": 15879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15872, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25277:2:5", + "nodeType": "VariableDeclaration", + "scope": 15893, + "src": "25269:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15871, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25269:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15874, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25295:2:5", + "nodeType": "VariableDeclaration", + "scope": 15893, + "src": "25281:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15873, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25281:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15876, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25307:2:5", + "nodeType": "VariableDeclaration", + "scope": 15893, + "src": "25299:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15875, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25299:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15878, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25325:2:5", + "nodeType": "VariableDeclaration", + "scope": 15893, + "src": "25311:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15877, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25311:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "25268:60:5" + }, + "returnParameters": { + "id": 15880, + "nodeType": "ParameterList", + "parameters": [], + "src": "25343:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15916, + "nodeType": "FunctionDefinition", + "src": "25460:187:5", + "body": { + "id": 15915, + "nodeType": "Block", + "src": "25538:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c626f6f6c29", + "id": 15907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25588:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90c30a564e5b352d6dfee73888402a5685ca327aad7827d5040904440ee085c5", + "typeString": "literal_string \"log(uint256,string,address,bool)\"" + }, + "value": "log(uint256,string,address,bool)" + }, + { + "id": 15908, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15895, + "src": "25624:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15909, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15897, + "src": "25628:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15910, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15899, + "src": "25632:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15911, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15901, + "src": "25636:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90c30a564e5b352d6dfee73888402a5685ca327aad7827d5040904440ee085c5", + "typeString": "literal_string \"log(uint256,string,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15905, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25564:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15906, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25564:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25564:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15904, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "25548:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25548:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15914, + "nodeType": "ExpressionStatement", + "src": "25548:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25469:3:5", + "parameters": { + "id": 15902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15895, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25481:2:5", + "nodeType": "VariableDeclaration", + "scope": 15916, + "src": "25473:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15894, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25473:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15897, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25499:2:5", + "nodeType": "VariableDeclaration", + "scope": 15916, + "src": "25485:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15896, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25485:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15899, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25511:2:5", + "nodeType": "VariableDeclaration", + "scope": 15916, + "src": "25503:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15898, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25503:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15901, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25520:2:5", + "nodeType": "VariableDeclaration", + "scope": 15916, + "src": "25515:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15900, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25515:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "25472:51:5" + }, + "returnParameters": { + "id": 15903, + "nodeType": "ParameterList", + "parameters": [], + "src": "25538:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15939, + "nodeType": "FunctionDefinition", + "src": "25653:193:5", + "body": { + "id": 15938, + "nodeType": "Block", + "src": "25734:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c737472696e672c616464726573732c6164647265737329", + "id": 15930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25784:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6168ed618844a2c75dc49207e69cdff562cd2faf2e74aa5192211a023611c6bd", + "typeString": "literal_string \"log(uint256,string,address,address)\"" + }, + "value": "log(uint256,string,address,address)" + }, + { + "id": 15931, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15918, + "src": "25823:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15932, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15920, + "src": "25827:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 15933, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15922, + "src": "25831:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 15934, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15924, + "src": "25835:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6168ed618844a2c75dc49207e69cdff562cd2faf2e74aa5192211a023611c6bd", + "typeString": "literal_string \"log(uint256,string,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 15928, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25760:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15929, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25760:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25760:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15927, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "25744:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25744:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15937, + "nodeType": "ExpressionStatement", + "src": "25744:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25662:3:5", + "parameters": { + "id": 15925, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15918, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25674:2:5", + "nodeType": "VariableDeclaration", + "scope": 15939, + "src": "25666:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15917, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25666:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15920, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25692:2:5", + "nodeType": "VariableDeclaration", + "scope": 15939, + "src": "25678:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15919, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "25678:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15922, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25704:2:5", + "nodeType": "VariableDeclaration", + "scope": 15939, + "src": "25696:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15921, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25696:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15924, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25716:2:5", + "nodeType": "VariableDeclaration", + "scope": 15939, + "src": "25708:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 15923, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "25708:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "25665:54:5" + }, + "returnParameters": { + "id": 15926, + "nodeType": "ParameterList", + "parameters": [], + "src": "25734:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15962, + "nodeType": "FunctionDefinition", + "src": "25852:182:5", + "body": { + "id": 15961, + "nodeType": "Block", + "src": "25924:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c75696e7432353629", + "id": 15953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25974:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c6acc7a8396e6de9a5a1476aecf2cbff57758b174747b0371b7f3994e930b8b4", + "typeString": "literal_string \"log(uint256,bool,uint256,uint256)\"" + }, + "value": "log(uint256,bool,uint256,uint256)" + }, + { + "id": 15954, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15941, + "src": "26011:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15955, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15943, + "src": "26015:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15956, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15945, + "src": "26019:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15957, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15947, + "src": "26023:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c6acc7a8396e6de9a5a1476aecf2cbff57758b174747b0371b7f3994e930b8b4", + "typeString": "literal_string \"log(uint256,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 15951, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "25950:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15952, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "25950:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25950:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15950, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "25934:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25934:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15960, + "nodeType": "ExpressionStatement", + "src": "25934:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "25861:3:5", + "parameters": { + "id": 15948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15941, + "mutability": "mutable", + "name": "p0", + "nameLocation": "25873:2:5", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "25865:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15940, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25865:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15943, + "mutability": "mutable", + "name": "p1", + "nameLocation": "25882:2:5", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "25877:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15942, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "25877:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15945, + "mutability": "mutable", + "name": "p2", + "nameLocation": "25894:2:5", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "25886:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15944, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25886:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15947, + "mutability": "mutable", + "name": "p3", + "nameLocation": "25906:2:5", + "nodeType": "VariableDeclaration", + "scope": 15962, + "src": "25898:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15946, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25898:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25864:45:5" + }, + "returnParameters": { + "id": 15949, + "nodeType": "ParameterList", + "parameters": [], + "src": "25924:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 15985, + "nodeType": "FunctionDefinition", + "src": "26040:187:5", + "body": { + "id": 15984, + "nodeType": "Block", + "src": "26118:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c737472696e6729", + "id": 15976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26168:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de03e77403acbacf9b1b18c1115984c9fba2c45e2eec9f12c266ada3f62a0d1b", + "typeString": "literal_string \"log(uint256,bool,uint256,string)\"" + }, + "value": "log(uint256,bool,uint256,string)" + }, + { + "id": 15977, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15964, + "src": "26204:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15978, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15966, + "src": "26208:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 15979, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15968, + "src": "26212:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 15980, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15970, + "src": "26216:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de03e77403acbacf9b1b18c1115984c9fba2c45e2eec9f12c266ada3f62a0d1b", + "typeString": "literal_string \"log(uint256,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 15974, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26144:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15975, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26144:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 15981, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26144:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15973, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "26128:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 15982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26128:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 15983, + "nodeType": "ExpressionStatement", + "src": "26128:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26049:3:5", + "parameters": { + "id": 15971, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15964, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26061:2:5", + "nodeType": "VariableDeclaration", + "scope": 15985, + "src": "26053:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15963, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26053:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15966, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26070:2:5", + "nodeType": "VariableDeclaration", + "scope": 15985, + "src": "26065:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15965, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26065:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15968, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26082:2:5", + "nodeType": "VariableDeclaration", + "scope": 15985, + "src": "26074:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15967, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26074:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15970, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26100:2:5", + "nodeType": "VariableDeclaration", + "scope": 15985, + "src": "26086:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 15969, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26086:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "26052:51:5" + }, + "returnParameters": { + "id": 15972, + "nodeType": "ParameterList", + "parameters": [], + "src": "26118:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16008, + "nodeType": "FunctionDefinition", + "src": "26233:176:5", + "body": { + "id": 16007, + "nodeType": "Block", + "src": "26302:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c626f6f6c29", + "id": 15999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26352:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91a02e2ac8ae09683fa28beba3fd130b88054c89e51901b8e0510c8e25aa37d1", + "typeString": "literal_string \"log(uint256,bool,uint256,bool)\"" + }, + "value": "log(uint256,bool,uint256,bool)" + }, + { + "id": 16000, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15987, + "src": "26386:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16001, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15989, + "src": "26390:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16002, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15991, + "src": "26394:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16003, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 15993, + "src": "26398:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91a02e2ac8ae09683fa28beba3fd130b88054c89e51901b8e0510c8e25aa37d1", + "typeString": "literal_string \"log(uint256,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 15997, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26328:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 15998, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26328:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26328:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 15996, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "26312:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26312:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16006, + "nodeType": "ExpressionStatement", + "src": "26312:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26242:3:5", + "parameters": { + "id": 15994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15987, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26254:2:5", + "nodeType": "VariableDeclaration", + "scope": 16008, + "src": "26246:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26246:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15989, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26263:2:5", + "nodeType": "VariableDeclaration", + "scope": 16008, + "src": "26258:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15988, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26258:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15991, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26275:2:5", + "nodeType": "VariableDeclaration", + "scope": 16008, + "src": "26267:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 15990, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26267:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15993, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26284:2:5", + "nodeType": "VariableDeclaration", + "scope": 16008, + "src": "26279:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 15992, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26279:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "26245:42:5" + }, + "returnParameters": { + "id": 15995, + "nodeType": "ParameterList", + "parameters": [], + "src": "26302:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16031, + "nodeType": "FunctionDefinition", + "src": "26415:182:5", + "body": { + "id": 16030, + "nodeType": "Block", + "src": "26487:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c75696e743235362c6164647265737329", + "id": 16022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26537:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88cb6041693b97a5282ad65a65484c065fbc3d3a4dac698c427f5b30bb33b29b", + "typeString": "literal_string \"log(uint256,bool,uint256,address)\"" + }, + "value": "log(uint256,bool,uint256,address)" + }, + { + "id": 16023, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16010, + "src": "26574:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16024, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16012, + "src": "26578:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16025, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16014, + "src": "26582:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16026, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16016, + "src": "26586:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88cb6041693b97a5282ad65a65484c065fbc3d3a4dac698c427f5b30bb33b29b", + "typeString": "literal_string \"log(uint256,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16020, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26513:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16021, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26513:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26513:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16019, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "26497:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26497:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16029, + "nodeType": "ExpressionStatement", + "src": "26497:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26424:3:5", + "parameters": { + "id": 16017, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16010, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26436:2:5", + "nodeType": "VariableDeclaration", + "scope": 16031, + "src": "26428:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16009, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26428:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16012, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26445:2:5", + "nodeType": "VariableDeclaration", + "scope": 16031, + "src": "26440:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16011, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26440:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16014, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26457:2:5", + "nodeType": "VariableDeclaration", + "scope": 16031, + "src": "26449:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16013, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26449:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16016, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26469:2:5", + "nodeType": "VariableDeclaration", + "scope": 16031, + "src": "26461:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16015, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "26461:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "26427:45:5" + }, + "returnParameters": { + "id": 16018, + "nodeType": "ParameterList", + "parameters": [], + "src": "26487:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16054, + "nodeType": "FunctionDefinition", + "src": "26603:187:5", + "body": { + "id": 16053, + "nodeType": "Block", + "src": "26681:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c75696e7432353629", + "id": 16045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26731:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c1d07463509a567bf9962980ac948a2ea7c76a53c189a607b7b35b14e806be8", + "typeString": "literal_string \"log(uint256,bool,string,uint256)\"" + }, + "value": "log(uint256,bool,string,uint256)" + }, + { + "id": 16046, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16033, + "src": "26767:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16047, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16035, + "src": "26771:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16048, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16037, + "src": "26775:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16049, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16039, + "src": "26779:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c1d07463509a567bf9962980ac948a2ea7c76a53c189a607b7b35b14e806be8", + "typeString": "literal_string \"log(uint256,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16043, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26707:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16044, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26707:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16050, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26707:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16042, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "26691:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26691:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16052, + "nodeType": "ExpressionStatement", + "src": "26691:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26612:3:5", + "parameters": { + "id": 16040, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16033, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26624:2:5", + "nodeType": "VariableDeclaration", + "scope": 16054, + "src": "26616:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16032, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26616:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16035, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26633:2:5", + "nodeType": "VariableDeclaration", + "scope": 16054, + "src": "26628:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16034, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26628:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16037, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26651:2:5", + "nodeType": "VariableDeclaration", + "scope": 16054, + "src": "26637:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16036, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26637:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16039, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26663:2:5", + "nodeType": "VariableDeclaration", + "scope": 16054, + "src": "26655:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16038, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26655:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "26615:51:5" + }, + "returnParameters": { + "id": 16041, + "nodeType": "ParameterList", + "parameters": [], + "src": "26681:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16077, + "nodeType": "FunctionDefinition", + "src": "26796:192:5", + "body": { + "id": 16076, + "nodeType": "Block", + "src": "26880:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c737472696e6729", + "id": 16068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "26930:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_68c8b8bd8cd0cfd8add7c6745840520db0bd1049365ac415de6367b3b79b5ddd", + "typeString": "literal_string \"log(uint256,bool,string,string)\"" + }, + "value": "log(uint256,bool,string,string)" + }, + { + "id": 16069, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16056, + "src": "26965:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16070, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16058, + "src": "26969:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16071, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16060, + "src": "26973:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16072, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16062, + "src": "26977:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_68c8b8bd8cd0cfd8add7c6745840520db0bd1049365ac415de6367b3b79b5ddd", + "typeString": "literal_string \"log(uint256,bool,string,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16066, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "26906:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16067, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "26906:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16073, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26906:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16065, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "26890:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "26890:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16075, + "nodeType": "ExpressionStatement", + "src": "26890:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "26805:3:5", + "parameters": { + "id": 16063, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16056, + "mutability": "mutable", + "name": "p0", + "nameLocation": "26817:2:5", + "nodeType": "VariableDeclaration", + "scope": 16077, + "src": "26809:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16055, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "26809:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16058, + "mutability": "mutable", + "name": "p1", + "nameLocation": "26826:2:5", + "nodeType": "VariableDeclaration", + "scope": 16077, + "src": "26821:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16057, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "26821:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16060, + "mutability": "mutable", + "name": "p2", + "nameLocation": "26844:2:5", + "nodeType": "VariableDeclaration", + "scope": 16077, + "src": "26830:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16059, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26830:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16062, + "mutability": "mutable", + "name": "p3", + "nameLocation": "26862:2:5", + "nodeType": "VariableDeclaration", + "scope": 16077, + "src": "26848:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16061, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "26848:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "26808:57:5" + }, + "returnParameters": { + "id": 16064, + "nodeType": "ParameterList", + "parameters": [], + "src": "26880:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16100, + "nodeType": "FunctionDefinition", + "src": "26994:181:5", + "body": { + "id": 16099, + "nodeType": "Block", + "src": "27069:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c626f6f6c29", + "id": 16091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27119:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb928d7f2c458ba40d8ba853c60153b2f73ca9189d4be051103bc8a6c10d45ad", + "typeString": "literal_string \"log(uint256,bool,string,bool)\"" + }, + "value": "log(uint256,bool,string,bool)" + }, + { + "id": 16092, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16079, + "src": "27152:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16093, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16081, + "src": "27156:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16094, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16083, + "src": "27160:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16095, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16085, + "src": "27164:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb928d7f2c458ba40d8ba853c60153b2f73ca9189d4be051103bc8a6c10d45ad", + "typeString": "literal_string \"log(uint256,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16089, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27095:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27095:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27095:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16088, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27079:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27079:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16098, + "nodeType": "ExpressionStatement", + "src": "27079:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27003:3:5", + "parameters": { + "id": 16086, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16079, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27015:2:5", + "nodeType": "VariableDeclaration", + "scope": 16100, + "src": "27007:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16078, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27007:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16081, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27024:2:5", + "nodeType": "VariableDeclaration", + "scope": 16100, + "src": "27019:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16080, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27019:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16083, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27042:2:5", + "nodeType": "VariableDeclaration", + "scope": 16100, + "src": "27028:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16082, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27028:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16085, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27051:2:5", + "nodeType": "VariableDeclaration", + "scope": 16100, + "src": "27046:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16084, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27046:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27006:48:5" + }, + "returnParameters": { + "id": 16087, + "nodeType": "ParameterList", + "parameters": [], + "src": "27069:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16123, + "nodeType": "FunctionDefinition", + "src": "27181:187:5", + "body": { + "id": 16122, + "nodeType": "Block", + "src": "27259:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c737472696e672c6164647265737329", + "id": 16114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27309:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef529018e81552426f837435fb92b39b88965df2736546faff28c9f06e5f58b5", + "typeString": "literal_string \"log(uint256,bool,string,address)\"" + }, + "value": "log(uint256,bool,string,address)" + }, + { + "id": 16115, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16102, + "src": "27345:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16116, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16104, + "src": "27349:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16117, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16106, + "src": "27353:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16118, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16108, + "src": "27357:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef529018e81552426f837435fb92b39b88965df2736546faff28c9f06e5f58b5", + "typeString": "literal_string \"log(uint256,bool,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16112, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27285:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16113, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27285:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27285:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16111, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27269:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27269:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16121, + "nodeType": "ExpressionStatement", + "src": "27269:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27190:3:5", + "parameters": { + "id": 16109, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16102, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27202:2:5", + "nodeType": "VariableDeclaration", + "scope": 16123, + "src": "27194:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16101, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27194:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16104, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27211:2:5", + "nodeType": "VariableDeclaration", + "scope": 16123, + "src": "27206:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16103, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27206:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16106, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27229:2:5", + "nodeType": "VariableDeclaration", + "scope": 16123, + "src": "27215:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16105, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27215:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16108, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27241:2:5", + "nodeType": "VariableDeclaration", + "scope": 16123, + "src": "27233:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16107, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27233:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "27193:51:5" + }, + "returnParameters": { + "id": 16110, + "nodeType": "ParameterList", + "parameters": [], + "src": "27259:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16146, + "nodeType": "FunctionDefinition", + "src": "27374:176:5", + "body": { + "id": 16145, + "nodeType": "Block", + "src": "27443:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 16137, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27493:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7464ce2380e6490f75dd524dd03612157b27bca22ecbf1bc2f0ca22ac41015d1", + "typeString": "literal_string \"log(uint256,bool,bool,uint256)\"" + }, + "value": "log(uint256,bool,bool,uint256)" + }, + { + "id": 16138, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16125, + "src": "27527:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16139, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16127, + "src": "27531:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16140, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16129, + "src": "27535:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16141, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16131, + "src": "27539:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7464ce2380e6490f75dd524dd03612157b27bca22ecbf1bc2f0ca22ac41015d1", + "typeString": "literal_string \"log(uint256,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16135, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27469:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16136, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27469:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27469:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16134, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27453:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27453:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16144, + "nodeType": "ExpressionStatement", + "src": "27453:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27383:3:5", + "parameters": { + "id": 16132, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16125, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27395:2:5", + "nodeType": "VariableDeclaration", + "scope": 16146, + "src": "27387:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16124, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27387:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16127, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27404:2:5", + "nodeType": "VariableDeclaration", + "scope": 16146, + "src": "27399:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16126, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27399:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16129, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27413:2:5", + "nodeType": "VariableDeclaration", + "scope": 16146, + "src": "27408:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16128, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27408:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16131, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27425:2:5", + "nodeType": "VariableDeclaration", + "scope": 16146, + "src": "27417:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27417:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "27386:42:5" + }, + "returnParameters": { + "id": 16133, + "nodeType": "ParameterList", + "parameters": [], + "src": "27443:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16169, + "nodeType": "FunctionDefinition", + "src": "27556:181:5", + "body": { + "id": 16168, + "nodeType": "Block", + "src": "27631:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c737472696e6729", + "id": 16160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27681:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dddb956172e374c580dd136b5b8151c6400d22ece6b561a1010b6b9e902dd439", + "typeString": "literal_string \"log(uint256,bool,bool,string)\"" + }, + "value": "log(uint256,bool,bool,string)" + }, + { + "id": 16161, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16148, + "src": "27714:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16162, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16150, + "src": "27718:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16163, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16152, + "src": "27722:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16164, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16154, + "src": "27726:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dddb956172e374c580dd136b5b8151c6400d22ece6b561a1010b6b9e902dd439", + "typeString": "literal_string \"log(uint256,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16158, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27657:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27657:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16165, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27657:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16157, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27641:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27641:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16167, + "nodeType": "ExpressionStatement", + "src": "27641:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27565:3:5", + "parameters": { + "id": 16155, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16148, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27577:2:5", + "nodeType": "VariableDeclaration", + "scope": 16169, + "src": "27569:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16147, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27569:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16150, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27586:2:5", + "nodeType": "VariableDeclaration", + "scope": 16169, + "src": "27581:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16149, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27581:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16152, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27595:2:5", + "nodeType": "VariableDeclaration", + "scope": 16169, + "src": "27590:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16151, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27590:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16154, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27613:2:5", + "nodeType": "VariableDeclaration", + "scope": 16169, + "src": "27599:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16153, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "27599:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "27568:48:5" + }, + "returnParameters": { + "id": 16156, + "nodeType": "ParameterList", + "parameters": [], + "src": "27631:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16192, + "nodeType": "FunctionDefinition", + "src": "27743:170:5", + "body": { + "id": 16191, + "nodeType": "Block", + "src": "27809:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 16183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "27859:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b6f577a1520f8fa7d40eaff9dcd5f293e28b7606bd07d0a450b13db93da80473", + "typeString": "literal_string \"log(uint256,bool,bool,bool)\"" + }, + "value": "log(uint256,bool,bool,bool)" + }, + { + "id": 16184, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16171, + "src": "27890:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16185, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16173, + "src": "27894:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16186, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16175, + "src": "27898:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16187, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16177, + "src": "27902:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b6f577a1520f8fa7d40eaff9dcd5f293e28b7606bd07d0a450b13db93da80473", + "typeString": "literal_string \"log(uint256,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "27835:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "27835:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16188, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27835:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16180, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27819:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27819:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16190, + "nodeType": "ExpressionStatement", + "src": "27819:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27752:3:5", + "parameters": { + "id": 16178, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16171, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27764:2:5", + "nodeType": "VariableDeclaration", + "scope": 16192, + "src": "27756:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16170, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27756:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16173, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27773:2:5", + "nodeType": "VariableDeclaration", + "scope": 16192, + "src": "27768:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16172, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27768:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16175, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27782:2:5", + "nodeType": "VariableDeclaration", + "scope": 16192, + "src": "27777:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16174, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27777:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16177, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27791:2:5", + "nodeType": "VariableDeclaration", + "scope": 16192, + "src": "27786:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16176, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27786:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "27755:39:5" + }, + "returnParameters": { + "id": 16179, + "nodeType": "ParameterList", + "parameters": [], + "src": "27809:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16215, + "nodeType": "FunctionDefinition", + "src": "27919:176:5", + "body": { + "id": 16214, + "nodeType": "Block", + "src": "27988:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c626f6f6c2c6164647265737329", + "id": 16206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28038:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_69640b598ea5b9e4e68e932871cb8a509ce832c6718a902773532568b8c95c31", + "typeString": "literal_string \"log(uint256,bool,bool,address)\"" + }, + "value": "log(uint256,bool,bool,address)" + }, + { + "id": 16207, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16194, + "src": "28072:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16208, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16196, + "src": "28076:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16209, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16198, + "src": "28080:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16210, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16200, + "src": "28084:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_69640b598ea5b9e4e68e932871cb8a509ce832c6718a902773532568b8c95c31", + "typeString": "literal_string \"log(uint256,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16204, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28014:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28014:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28014:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16203, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "27998:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "27998:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16213, + "nodeType": "ExpressionStatement", + "src": "27998:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "27928:3:5", + "parameters": { + "id": 16201, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16194, + "mutability": "mutable", + "name": "p0", + "nameLocation": "27940:2:5", + "nodeType": "VariableDeclaration", + "scope": 16215, + "src": "27932:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16193, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "27932:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16196, + "mutability": "mutable", + "name": "p1", + "nameLocation": "27949:2:5", + "nodeType": "VariableDeclaration", + "scope": 16215, + "src": "27944:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16195, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27944:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16198, + "mutability": "mutable", + "name": "p2", + "nameLocation": "27958:2:5", + "nodeType": "VariableDeclaration", + "scope": 16215, + "src": "27953:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16197, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "27953:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16200, + "mutability": "mutable", + "name": "p3", + "nameLocation": "27970:2:5", + "nodeType": "VariableDeclaration", + "scope": 16215, + "src": "27962:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16199, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "27962:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "27931:42:5" + }, + "returnParameters": { + "id": 16202, + "nodeType": "ParameterList", + "parameters": [], + "src": "27988:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16238, + "nodeType": "FunctionDefinition", + "src": "28101:182:5", + "body": { + "id": 16237, + "nodeType": "Block", + "src": "28173:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c75696e7432353629", + "id": 16229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28223:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_078287f5d654caee11cca90bb8c074a9529509cd07319dc17a93fa036ea5ea88", + "typeString": "literal_string \"log(uint256,bool,address,uint256)\"" + }, + "value": "log(uint256,bool,address,uint256)" + }, + { + "id": 16230, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16217, + "src": "28260:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16231, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16219, + "src": "28264:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16232, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16221, + "src": "28268:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16233, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16223, + "src": "28272:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_078287f5d654caee11cca90bb8c074a9529509cd07319dc17a93fa036ea5ea88", + "typeString": "literal_string \"log(uint256,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16227, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28199:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16228, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28199:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16234, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28199:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16226, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "28183:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28183:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16236, + "nodeType": "ExpressionStatement", + "src": "28183:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28110:3:5", + "parameters": { + "id": 16224, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16217, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28122:2:5", + "nodeType": "VariableDeclaration", + "scope": 16238, + "src": "28114:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16216, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28114:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16219, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28131:2:5", + "nodeType": "VariableDeclaration", + "scope": 16238, + "src": "28126:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16218, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28126:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16221, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28143:2:5", + "nodeType": "VariableDeclaration", + "scope": 16238, + "src": "28135:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16220, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28135:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16223, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28155:2:5", + "nodeType": "VariableDeclaration", + "scope": 16238, + "src": "28147:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16222, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28147:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "28113:45:5" + }, + "returnParameters": { + "id": 16225, + "nodeType": "ParameterList", + "parameters": [], + "src": "28173:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16261, + "nodeType": "FunctionDefinition", + "src": "28289:187:5", + "body": { + "id": 16260, + "nodeType": "Block", + "src": "28367:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c737472696e6729", + "id": 16252, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28417:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ade052c70a8f7736e3d4ca12bfb5de52ba51cd4551a71eb41200e5ca9b193461", + "typeString": "literal_string \"log(uint256,bool,address,string)\"" + }, + "value": "log(uint256,bool,address,string)" + }, + { + "id": 16253, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16240, + "src": "28453:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16254, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16242, + "src": "28457:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16255, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16244, + "src": "28461:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16256, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16246, + "src": "28465:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ade052c70a8f7736e3d4ca12bfb5de52ba51cd4551a71eb41200e5ca9b193461", + "typeString": "literal_string \"log(uint256,bool,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16250, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28393:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16251, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28393:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16257, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28393:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16249, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "28377:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28377:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16259, + "nodeType": "ExpressionStatement", + "src": "28377:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28298:3:5", + "parameters": { + "id": 16247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16240, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28310:2:5", + "nodeType": "VariableDeclaration", + "scope": 16261, + "src": "28302:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16239, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28302:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16242, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28319:2:5", + "nodeType": "VariableDeclaration", + "scope": 16261, + "src": "28314:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16241, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28314:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16244, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28331:2:5", + "nodeType": "VariableDeclaration", + "scope": 16261, + "src": "28323:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16243, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28323:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16246, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28349:2:5", + "nodeType": "VariableDeclaration", + "scope": 16261, + "src": "28335:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16245, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "28335:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "28301:51:5" + }, + "returnParameters": { + "id": 16248, + "nodeType": "ParameterList", + "parameters": [], + "src": "28367:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16284, + "nodeType": "FunctionDefinition", + "src": "28482:176:5", + "body": { + "id": 16283, + "nodeType": "Block", + "src": "28551:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c626f6f6c29", + "id": 16275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28601:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_454d54a5a1119d55883b5fbee0d6f19af54017eb1650d2284224aac472880f6a", + "typeString": "literal_string \"log(uint256,bool,address,bool)\"" + }, + "value": "log(uint256,bool,address,bool)" + }, + { + "id": 16276, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16263, + "src": "28635:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16277, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16265, + "src": "28639:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16278, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16267, + "src": "28643:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16279, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16269, + "src": "28647:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_454d54a5a1119d55883b5fbee0d6f19af54017eb1650d2284224aac472880f6a", + "typeString": "literal_string \"log(uint256,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16273, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28577:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28577:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28577:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16272, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "28561:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28561:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16282, + "nodeType": "ExpressionStatement", + "src": "28561:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28491:3:5", + "parameters": { + "id": 16270, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16263, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28503:2:5", + "nodeType": "VariableDeclaration", + "scope": 16284, + "src": "28495:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16262, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28495:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16265, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28512:2:5", + "nodeType": "VariableDeclaration", + "scope": 16284, + "src": "28507:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16264, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28507:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16267, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28524:2:5", + "nodeType": "VariableDeclaration", + "scope": 16284, + "src": "28516:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16266, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28516:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16269, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28533:2:5", + "nodeType": "VariableDeclaration", + "scope": 16284, + "src": "28528:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16268, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28528:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "28494:42:5" + }, + "returnParameters": { + "id": 16271, + "nodeType": "ParameterList", + "parameters": [], + "src": "28551:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16307, + "nodeType": "FunctionDefinition", + "src": "28664:182:5", + "body": { + "id": 16306, + "nodeType": "Block", + "src": "28736:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c626f6f6c2c616464726573732c6164647265737329", + "id": 16298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28786:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1ef4cbbfd0316a849f14b661567c9c341a49bccb745dfb6a3d9b82c389ac190", + "typeString": "literal_string \"log(uint256,bool,address,address)\"" + }, + "value": "log(uint256,bool,address,address)" + }, + { + "id": 16299, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16286, + "src": "28823:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16300, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16288, + "src": "28827:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16301, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16290, + "src": "28831:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16302, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16292, + "src": "28835:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1ef4cbbfd0316a849f14b661567c9c341a49bccb745dfb6a3d9b82c389ac190", + "typeString": "literal_string \"log(uint256,bool,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16296, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28762:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16297, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28762:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16303, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28762:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16295, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "28746:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28746:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16305, + "nodeType": "ExpressionStatement", + "src": "28746:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28673:3:5", + "parameters": { + "id": 16293, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16286, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28685:2:5", + "nodeType": "VariableDeclaration", + "scope": 16307, + "src": "28677:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16285, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28677:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16288, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28694:2:5", + "nodeType": "VariableDeclaration", + "scope": 16307, + "src": "28689:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16287, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "28689:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16290, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28706:2:5", + "nodeType": "VariableDeclaration", + "scope": 16307, + "src": "28698:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16289, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28698:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16292, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28718:2:5", + "nodeType": "VariableDeclaration", + "scope": 16307, + "src": "28710:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16291, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28710:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "28676:45:5" + }, + "returnParameters": { + "id": 16294, + "nodeType": "ParameterList", + "parameters": [], + "src": "28736:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16330, + "nodeType": "FunctionDefinition", + "src": "28852:188:5", + "body": { + "id": 16329, + "nodeType": "Block", + "src": "28927:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c75696e7432353629", + "id": 16321, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "28977:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c9cd9c12a2e17a9af800ac7e9a2b379066135ecb5b197bdb13381ac61cbc59a", + "typeString": "literal_string \"log(uint256,address,uint256,uint256)\"" + }, + "value": "log(uint256,address,uint256,uint256)" + }, + { + "id": 16322, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16309, + "src": "29017:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16323, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16311, + "src": "29021:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16324, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16313, + "src": "29025:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16325, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16315, + "src": "29029:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c9cd9c12a2e17a9af800ac7e9a2b379066135ecb5b197bdb13381ac61cbc59a", + "typeString": "literal_string \"log(uint256,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16319, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "28953:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16320, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "28953:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16326, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28953:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16318, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "28937:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "28937:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16328, + "nodeType": "ExpressionStatement", + "src": "28937:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "28861:3:5", + "parameters": { + "id": 16316, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16309, + "mutability": "mutable", + "name": "p0", + "nameLocation": "28873:2:5", + "nodeType": "VariableDeclaration", + "scope": 16330, + "src": "28865:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16308, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28865:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16311, + "mutability": "mutable", + "name": "p1", + "nameLocation": "28885:2:5", + "nodeType": "VariableDeclaration", + "scope": 16330, + "src": "28877:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16310, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "28877:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16313, + "mutability": "mutable", + "name": "p2", + "nameLocation": "28897:2:5", + "nodeType": "VariableDeclaration", + "scope": 16330, + "src": "28889:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16312, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28889:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16315, + "mutability": "mutable", + "name": "p3", + "nameLocation": "28909:2:5", + "nodeType": "VariableDeclaration", + "scope": 16330, + "src": "28901:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16314, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "28901:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "28864:48:5" + }, + "returnParameters": { + "id": 16317, + "nodeType": "ParameterList", + "parameters": [], + "src": "28927:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16353, + "nodeType": "FunctionDefinition", + "src": "29046:193:5", + "body": { + "id": 16352, + "nodeType": "Block", + "src": "29127:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c737472696e6729", + "id": 16344, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29177:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ddb06521f885b932f9898b05830c564a50fea82133f47ad308278affbd84d0bd", + "typeString": "literal_string \"log(uint256,address,uint256,string)\"" + }, + "value": "log(uint256,address,uint256,string)" + }, + { + "id": 16345, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16332, + "src": "29216:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16346, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16334, + "src": "29220:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16347, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16336, + "src": "29224:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16348, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16338, + "src": "29228:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ddb06521f885b932f9898b05830c564a50fea82133f47ad308278affbd84d0bd", + "typeString": "literal_string \"log(uint256,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16342, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29153:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16343, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29153:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29153:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16341, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "29137:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29137:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16351, + "nodeType": "ExpressionStatement", + "src": "29137:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29055:3:5", + "parameters": { + "id": 16339, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16332, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29067:2:5", + "nodeType": "VariableDeclaration", + "scope": 16353, + "src": "29059:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16331, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29059:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16334, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29079:2:5", + "nodeType": "VariableDeclaration", + "scope": 16353, + "src": "29071:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16333, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29071:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16336, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29091:2:5", + "nodeType": "VariableDeclaration", + "scope": 16353, + "src": "29083:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16335, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29083:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16338, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29109:2:5", + "nodeType": "VariableDeclaration", + "scope": 16353, + "src": "29095:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16337, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29095:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29058:54:5" + }, + "returnParameters": { + "id": 16340, + "nodeType": "ParameterList", + "parameters": [], + "src": "29127:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16376, + "nodeType": "FunctionDefinition", + "src": "29245:182:5", + "body": { + "id": 16375, + "nodeType": "Block", + "src": "29317:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c626f6f6c29", + "id": 16367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29367:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f743a7c155871069fb5e6df4e57e25e572bb3015b18294cc69630b2e0ae2e5f", + "typeString": "literal_string \"log(uint256,address,uint256,bool)\"" + }, + "value": "log(uint256,address,uint256,bool)" + }, + { + "id": 16368, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16355, + "src": "29404:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16369, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16357, + "src": "29408:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16370, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16359, + "src": "29412:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16371, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16361, + "src": "29416:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f743a7c155871069fb5e6df4e57e25e572bb3015b18294cc69630b2e0ae2e5f", + "typeString": "literal_string \"log(uint256,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16365, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29343:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16366, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29343:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29343:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16364, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "29327:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29327:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16374, + "nodeType": "ExpressionStatement", + "src": "29327:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29254:3:5", + "parameters": { + "id": 16362, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16355, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29266:2:5", + "nodeType": "VariableDeclaration", + "scope": 16376, + "src": "29258:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29258:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16357, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29278:2:5", + "nodeType": "VariableDeclaration", + "scope": 16376, + "src": "29270:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16356, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29270:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16359, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29290:2:5", + "nodeType": "VariableDeclaration", + "scope": 16376, + "src": "29282:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16358, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29282:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16361, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29299:2:5", + "nodeType": "VariableDeclaration", + "scope": 16376, + "src": "29294:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16360, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "29294:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "29257:45:5" + }, + "returnParameters": { + "id": 16363, + "nodeType": "ParameterList", + "parameters": [], + "src": "29317:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16399, + "nodeType": "FunctionDefinition", + "src": "29433:188:5", + "body": { + "id": 16398, + "nodeType": "Block", + "src": "29508:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c75696e743235362c6164647265737329", + "id": 16390, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29558:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_15c127b50404cc1f9627d5115fd42bf400df548658b1002bf25e12f94854b379", + "typeString": "literal_string \"log(uint256,address,uint256,address)\"" + }, + "value": "log(uint256,address,uint256,address)" + }, + { + "id": 16391, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16378, + "src": "29598:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16392, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16380, + "src": "29602:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16393, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16382, + "src": "29606:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16394, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16384, + "src": "29610:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_15c127b50404cc1f9627d5115fd42bf400df548658b1002bf25e12f94854b379", + "typeString": "literal_string \"log(uint256,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16388, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29534:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16389, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29534:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29534:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16387, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "29518:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29518:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16397, + "nodeType": "ExpressionStatement", + "src": "29518:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29442:3:5", + "parameters": { + "id": 16385, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16378, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29454:2:5", + "nodeType": "VariableDeclaration", + "scope": 16399, + "src": "29446:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16377, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29446:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16380, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29466:2:5", + "nodeType": "VariableDeclaration", + "scope": 16399, + "src": "29458:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16379, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29458:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16382, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29478:2:5", + "nodeType": "VariableDeclaration", + "scope": 16399, + "src": "29470:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16381, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29470:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16384, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29490:2:5", + "nodeType": "VariableDeclaration", + "scope": 16399, + "src": "29482:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16383, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29482:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "29445:48:5" + }, + "returnParameters": { + "id": 16386, + "nodeType": "ParameterList", + "parameters": [], + "src": "29508:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16422, + "nodeType": "FunctionDefinition", + "src": "29627:193:5", + "body": { + "id": 16421, + "nodeType": "Block", + "src": "29708:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c75696e7432353629", + "id": 16413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29758:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46826b5dec5e8aeff4504f2c138d4e9c8aadb89d9034725f3050269a35303ba0", + "typeString": "literal_string \"log(uint256,address,string,uint256)\"" + }, + "value": "log(uint256,address,string,uint256)" + }, + { + "id": 16414, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16401, + "src": "29797:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16415, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16403, + "src": "29801:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16416, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16405, + "src": "29805:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16417, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16407, + "src": "29809:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46826b5dec5e8aeff4504f2c138d4e9c8aadb89d9034725f3050269a35303ba0", + "typeString": "literal_string \"log(uint256,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16411, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29734:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16412, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29734:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29734:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16410, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "29718:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29718:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16420, + "nodeType": "ExpressionStatement", + "src": "29718:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29636:3:5", + "parameters": { + "id": 16408, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16401, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29648:2:5", + "nodeType": "VariableDeclaration", + "scope": 16422, + "src": "29640:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16400, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29640:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16403, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29660:2:5", + "nodeType": "VariableDeclaration", + "scope": 16422, + "src": "29652:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16402, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29652:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16405, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29678:2:5", + "nodeType": "VariableDeclaration", + "scope": 16422, + "src": "29664:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16404, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29664:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16407, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29690:2:5", + "nodeType": "VariableDeclaration", + "scope": 16422, + "src": "29682:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16406, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29682:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "29639:54:5" + }, + "returnParameters": { + "id": 16409, + "nodeType": "ParameterList", + "parameters": [], + "src": "29708:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16445, + "nodeType": "FunctionDefinition", + "src": "29826:198:5", + "body": { + "id": 16444, + "nodeType": "Block", + "src": "29913:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c737472696e6729", + "id": 16436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "29963:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3e128ca3cc785552dc4e62d3c73af79fb5f114dc6f0c0eb2bc0e3bdbbd4a1d3b", + "typeString": "literal_string \"log(uint256,address,string,string)\"" + }, + "value": "log(uint256,address,string,string)" + }, + { + "id": 16437, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16424, + "src": "30001:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16438, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16426, + "src": "30005:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16439, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16428, + "src": "30009:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16440, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16430, + "src": "30013:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3e128ca3cc785552dc4e62d3c73af79fb5f114dc6f0c0eb2bc0e3bdbbd4a1d3b", + "typeString": "literal_string \"log(uint256,address,string,string)\"" + }, + { + "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" + } + ], + "expression": { + "id": 16434, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "29939:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "29939:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29939:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16433, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "29923:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "29923:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16443, + "nodeType": "ExpressionStatement", + "src": "29923:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "29835:3:5", + "parameters": { + "id": 16431, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16424, + "mutability": "mutable", + "name": "p0", + "nameLocation": "29847:2:5", + "nodeType": "VariableDeclaration", + "scope": 16445, + "src": "29839:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16423, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "29839:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16426, + "mutability": "mutable", + "name": "p1", + "nameLocation": "29859:2:5", + "nodeType": "VariableDeclaration", + "scope": 16445, + "src": "29851:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16425, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "29851:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16428, + "mutability": "mutable", + "name": "p2", + "nameLocation": "29877:2:5", + "nodeType": "VariableDeclaration", + "scope": 16445, + "src": "29863:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16427, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29863:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16430, + "mutability": "mutable", + "name": "p3", + "nameLocation": "29895:2:5", + "nodeType": "VariableDeclaration", + "scope": 16445, + "src": "29881:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16429, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "29881:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "29838:60:5" + }, + "returnParameters": { + "id": 16432, + "nodeType": "ParameterList", + "parameters": [], + "src": "29913:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16468, + "nodeType": "FunctionDefinition", + "src": "30030:187:5", + "body": { + "id": 16467, + "nodeType": "Block", + "src": "30108:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c626f6f6c29", + "id": 16459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30158:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc32ab07df108ae88df1c6b9771e60e5cd39cbe0f0e92481af8633000db2c64b", + "typeString": "literal_string \"log(uint256,address,string,bool)\"" + }, + "value": "log(uint256,address,string,bool)" + }, + { + "id": 16460, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16447, + "src": "30194:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16461, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16449, + "src": "30198:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16462, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16451, + "src": "30202:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16463, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16453, + "src": "30206:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cc32ab07df108ae88df1c6b9771e60e5cd39cbe0f0e92481af8633000db2c64b", + "typeString": "literal_string \"log(uint256,address,string,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16457, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30134:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30134:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30134:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16456, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "30118:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30118:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16466, + "nodeType": "ExpressionStatement", + "src": "30118:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30039:3:5", + "parameters": { + "id": 16454, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16447, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30051:2:5", + "nodeType": "VariableDeclaration", + "scope": 16468, + "src": "30043:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16446, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30043:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16449, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30063:2:5", + "nodeType": "VariableDeclaration", + "scope": 16468, + "src": "30055:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16448, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30055:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16451, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30081:2:5", + "nodeType": "VariableDeclaration", + "scope": 16468, + "src": "30067:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16450, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30067:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16453, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30090:2:5", + "nodeType": "VariableDeclaration", + "scope": 16468, + "src": "30085:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16452, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30085:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30042:51:5" + }, + "returnParameters": { + "id": 16455, + "nodeType": "ParameterList", + "parameters": [], + "src": "30108:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16491, + "nodeType": "FunctionDefinition", + "src": "30223:193:5", + "body": { + "id": 16490, + "nodeType": "Block", + "src": "30304:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c737472696e672c6164647265737329", + "id": 16482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30354:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9cba8fffa4a3e6f47d307a71f619bf1719d0a75680c6c916d7776ea0341039b9", + "typeString": "literal_string \"log(uint256,address,string,address)\"" + }, + "value": "log(uint256,address,string,address)" + }, + { + "id": 16483, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16470, + "src": "30393:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16484, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16472, + "src": "30397:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16485, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16474, + "src": "30401:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16486, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16476, + "src": "30405:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9cba8fffa4a3e6f47d307a71f619bf1719d0a75680c6c916d7776ea0341039b9", + "typeString": "literal_string \"log(uint256,address,string,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16480, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30330:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30330:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16487, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30330:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16479, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "30314:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30314:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16489, + "nodeType": "ExpressionStatement", + "src": "30314:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30232:3:5", + "parameters": { + "id": 16477, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16470, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30244:2:5", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "30236:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16469, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30236:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16472, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30256:2:5", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "30248:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30248:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16474, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30274:2:5", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "30260:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16473, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30260:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16476, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30286:2:5", + "nodeType": "VariableDeclaration", + "scope": 16491, + "src": "30278:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16475, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30278:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "30235:54:5" + }, + "returnParameters": { + "id": 16478, + "nodeType": "ParameterList", + "parameters": [], + "src": "30304:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16514, + "nodeType": "FunctionDefinition", + "src": "30422:182:5", + "body": { + "id": 16513, + "nodeType": "Block", + "src": "30494:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c75696e7432353629", + "id": 16505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30544:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5abd992a7a64be8afc8745d44215dd5b4a31f8b03abd4cb03ff6565b7f51c1b1", + "typeString": "literal_string \"log(uint256,address,bool,uint256)\"" + }, + "value": "log(uint256,address,bool,uint256)" + }, + { + "id": 16506, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16493, + "src": "30581:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16507, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16495, + "src": "30585:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16508, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16497, + "src": "30589:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16509, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16499, + "src": "30593:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5abd992a7a64be8afc8745d44215dd5b4a31f8b03abd4cb03ff6565b7f51c1b1", + "typeString": "literal_string \"log(uint256,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16503, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30520:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16504, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30520:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16510, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30520:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16502, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "30504:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30504:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16512, + "nodeType": "ExpressionStatement", + "src": "30504:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30431:3:5", + "parameters": { + "id": 16500, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16493, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30443:2:5", + "nodeType": "VariableDeclaration", + "scope": 16514, + "src": "30435:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16492, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30435:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16495, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30455:2:5", + "nodeType": "VariableDeclaration", + "scope": 16514, + "src": "30447:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30447:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16497, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30464:2:5", + "nodeType": "VariableDeclaration", + "scope": 16514, + "src": "30459:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16496, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30459:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16499, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30476:2:5", + "nodeType": "VariableDeclaration", + "scope": 16514, + "src": "30468:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16498, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30468:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "30434:45:5" + }, + "returnParameters": { + "id": 16501, + "nodeType": "ParameterList", + "parameters": [], + "src": "30494:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16537, + "nodeType": "FunctionDefinition", + "src": "30610:187:5", + "body": { + "id": 16536, + "nodeType": "Block", + "src": "30688:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c737472696e6729", + "id": 16528, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30738:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_90fb06aa0f94ddb9149d9a0d0271a9fd2b331af93ebc6a4aece22e4f82154c7d", + "typeString": "literal_string \"log(uint256,address,bool,string)\"" + }, + "value": "log(uint256,address,bool,string)" + }, + { + "id": 16529, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16516, + "src": "30774:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16530, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16518, + "src": "30778:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16531, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16520, + "src": "30782:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16532, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16522, + "src": "30786:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_90fb06aa0f94ddb9149d9a0d0271a9fd2b331af93ebc6a4aece22e4f82154c7d", + "typeString": "literal_string \"log(uint256,address,bool,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16526, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30714:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16527, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30714:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16533, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30714:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16525, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "30698:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30698:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16535, + "nodeType": "ExpressionStatement", + "src": "30698:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30619:3:5", + "parameters": { + "id": 16523, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16516, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30631:2:5", + "nodeType": "VariableDeclaration", + "scope": 16537, + "src": "30623:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16515, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30623:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16518, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30643:2:5", + "nodeType": "VariableDeclaration", + "scope": 16537, + "src": "30635:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16517, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30635:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16520, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30652:2:5", + "nodeType": "VariableDeclaration", + "scope": 16537, + "src": "30647:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16519, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30647:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16522, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30670:2:5", + "nodeType": "VariableDeclaration", + "scope": 16537, + "src": "30656:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16521, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "30656:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "30622:51:5" + }, + "returnParameters": { + "id": 16524, + "nodeType": "ParameterList", + "parameters": [], + "src": "30688:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16560, + "nodeType": "FunctionDefinition", + "src": "30803:176:5", + "body": { + "id": 16559, + "nodeType": "Block", + "src": "30872:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c626f6f6c29", + "id": 16551, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "30922:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e351140f919f09731a4793c7bb4d5f07234902f499ced9e1e3c9639d2685c6f1", + "typeString": "literal_string \"log(uint256,address,bool,bool)\"" + }, + "value": "log(uint256,address,bool,bool)" + }, + { + "id": 16552, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16539, + "src": "30956:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16553, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16541, + "src": "30960:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16554, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16543, + "src": "30964:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16555, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16545, + "src": "30968:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e351140f919f09731a4793c7bb4d5f07234902f499ced9e1e3c9639d2685c6f1", + "typeString": "literal_string \"log(uint256,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16549, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "30898:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16550, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "30898:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16556, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30898:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16548, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "30882:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "30882:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16558, + "nodeType": "ExpressionStatement", + "src": "30882:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30812:3:5", + "parameters": { + "id": 16546, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16539, + "mutability": "mutable", + "name": "p0", + "nameLocation": "30824:2:5", + "nodeType": "VariableDeclaration", + "scope": 16560, + "src": "30816:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16538, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30816:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16541, + "mutability": "mutable", + "name": "p1", + "nameLocation": "30836:2:5", + "nodeType": "VariableDeclaration", + "scope": 16560, + "src": "30828:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16540, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "30828:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16543, + "mutability": "mutable", + "name": "p2", + "nameLocation": "30845:2:5", + "nodeType": "VariableDeclaration", + "scope": 16560, + "src": "30840:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16542, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30840:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16545, + "mutability": "mutable", + "name": "p3", + "nameLocation": "30854:2:5", + "nodeType": "VariableDeclaration", + "scope": 16560, + "src": "30849:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16544, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "30849:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "30815:42:5" + }, + "returnParameters": { + "id": 16547, + "nodeType": "ParameterList", + "parameters": [], + "src": "30872:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16583, + "nodeType": "FunctionDefinition", + "src": "30985:182:5", + "body": { + "id": 16582, + "nodeType": "Block", + "src": "31057:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c626f6f6c2c6164647265737329", + "id": 16574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31107:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef72c5130890d3b81e89bdbf9a039a84547328dd01c955d6bb1088aaf2252d05", + "typeString": "literal_string \"log(uint256,address,bool,address)\"" + }, + "value": "log(uint256,address,bool,address)" + }, + { + "id": 16575, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16562, + "src": "31144:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16576, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16564, + "src": "31148:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16577, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16566, + "src": "31152:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16578, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16568, + "src": "31156:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef72c5130890d3b81e89bdbf9a039a84547328dd01c955d6bb1088aaf2252d05", + "typeString": "literal_string \"log(uint256,address,bool,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16572, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31083:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16573, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31083:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16579, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31083:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16571, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "31067:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31067:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16581, + "nodeType": "ExpressionStatement", + "src": "31067:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "30994:3:5", + "parameters": { + "id": 16569, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16562, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31006:2:5", + "nodeType": "VariableDeclaration", + "scope": 16583, + "src": "30998:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16561, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "30998:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16564, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31018:2:5", + "nodeType": "VariableDeclaration", + "scope": 16583, + "src": "31010:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16563, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31010:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16566, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31027:2:5", + "nodeType": "VariableDeclaration", + "scope": 16583, + "src": "31022:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16565, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "31022:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16568, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31039:2:5", + "nodeType": "VariableDeclaration", + "scope": 16583, + "src": "31031:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16567, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31031:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "30997:45:5" + }, + "returnParameters": { + "id": 16570, + "nodeType": "ParameterList", + "parameters": [], + "src": "31057:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16606, + "nodeType": "FunctionDefinition", + "src": "31173:188:5", + "body": { + "id": 16605, + "nodeType": "Block", + "src": "31248:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c75696e7432353629", + "id": 16597, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31298:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_736efbb692cd4ba0c879f89673f1c5a7eb58e7bd2b833c4d30d41d3aa9c7a23a", + "typeString": "literal_string \"log(uint256,address,address,uint256)\"" + }, + "value": "log(uint256,address,address,uint256)" + }, + { + "id": 16598, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16585, + "src": "31338:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16599, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16587, + "src": "31342:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16600, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16589, + "src": "31346:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16601, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16591, + "src": "31350:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_736efbb692cd4ba0c879f89673f1c5a7eb58e7bd2b833c4d30d41d3aa9c7a23a", + "typeString": "literal_string \"log(uint256,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16595, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31274:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16596, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31274:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31274:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16594, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "31258:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31258:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16604, + "nodeType": "ExpressionStatement", + "src": "31258:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31182:3:5", + "parameters": { + "id": 16592, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16585, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31194:2:5", + "nodeType": "VariableDeclaration", + "scope": 16606, + "src": "31186:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16584, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31186:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16587, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31206:2:5", + "nodeType": "VariableDeclaration", + "scope": 16606, + "src": "31198:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31198:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16589, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31218:2:5", + "nodeType": "VariableDeclaration", + "scope": 16606, + "src": "31210:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16588, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31210:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16591, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31230:2:5", + "nodeType": "VariableDeclaration", + "scope": 16606, + "src": "31222:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16590, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31222:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "31185:48:5" + }, + "returnParameters": { + "id": 16593, + "nodeType": "ParameterList", + "parameters": [], + "src": "31248:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16629, + "nodeType": "FunctionDefinition", + "src": "31367:193:5", + "body": { + "id": 16628, + "nodeType": "Block", + "src": "31448:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c737472696e6729", + "id": 16620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31498:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_031c6f73458c2a0d841ad5d5914dceb24973d9df898a3826eec79330397cd882", + "typeString": "literal_string \"log(uint256,address,address,string)\"" + }, + "value": "log(uint256,address,address,string)" + }, + { + "id": 16621, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16608, + "src": "31537:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16622, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16610, + "src": "31541:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16623, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16612, + "src": "31545:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16624, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16614, + "src": "31549:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_031c6f73458c2a0d841ad5d5914dceb24973d9df898a3826eec79330397cd882", + "typeString": "literal_string \"log(uint256,address,address,string)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16618, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31474:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16619, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31474:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16625, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31474:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16617, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "31458:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31458:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16627, + "nodeType": "ExpressionStatement", + "src": "31458:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31376:3:5", + "parameters": { + "id": 16615, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16608, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31388:2:5", + "nodeType": "VariableDeclaration", + "scope": 16629, + "src": "31380:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16607, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31380:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16610, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31400:2:5", + "nodeType": "VariableDeclaration", + "scope": 16629, + "src": "31392:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16609, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31392:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16612, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31412:2:5", + "nodeType": "VariableDeclaration", + "scope": 16629, + "src": "31404:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16611, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31404:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16614, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31430:2:5", + "nodeType": "VariableDeclaration", + "scope": 16629, + "src": "31416:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16613, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31416:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "31379:54:5" + }, + "returnParameters": { + "id": 16616, + "nodeType": "ParameterList", + "parameters": [], + "src": "31448:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16652, + "nodeType": "FunctionDefinition", + "src": "31566:182:5", + "body": { + "id": 16651, + "nodeType": "Block", + "src": "31638:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c626f6f6c29", + "id": 16643, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31688:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_091ffaf5e3365a794bfeb97b8157886a9ba00c981ee88d8a8fdb0cc96a5e6c1d", + "typeString": "literal_string \"log(uint256,address,address,bool)\"" + }, + "value": "log(uint256,address,address,bool)" + }, + { + "id": 16644, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16631, + "src": "31725:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16645, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16633, + "src": "31729:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16646, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16635, + "src": "31733:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16647, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16637, + "src": "31737:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_091ffaf5e3365a794bfeb97b8157886a9ba00c981ee88d8a8fdb0cc96a5e6c1d", + "typeString": "literal_string \"log(uint256,address,address,bool)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16641, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31664:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16642, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31664:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31664:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16640, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "31648:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31648:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16650, + "nodeType": "ExpressionStatement", + "src": "31648:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31575:3:5", + "parameters": { + "id": 16638, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16631, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31587:2:5", + "nodeType": "VariableDeclaration", + "scope": 16652, + "src": "31579:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16630, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31579:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16633, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31599:2:5", + "nodeType": "VariableDeclaration", + "scope": 16652, + "src": "31591:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31591:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16635, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31611:2:5", + "nodeType": "VariableDeclaration", + "scope": 16652, + "src": "31603:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16634, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31603:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16637, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31620:2:5", + "nodeType": "VariableDeclaration", + "scope": 16652, + "src": "31615:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16636, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "31615:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "31578:45:5" + }, + "returnParameters": { + "id": 16639, + "nodeType": "ParameterList", + "parameters": [], + "src": "31638:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16675, + "nodeType": "FunctionDefinition", + "src": "31754:188:5", + "body": { + "id": 16674, + "nodeType": "Block", + "src": "31829:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f672875696e743235362c616464726573732c616464726573732c6164647265737329", + "id": 16666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "31879:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2488b414330cbd4ddab2b849dacd8bed50b19b82318ec6e4a5ccdf72ee519553", + "typeString": "literal_string \"log(uint256,address,address,address)\"" + }, + "value": "log(uint256,address,address,address)" + }, + { + "id": 16667, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16654, + "src": "31919:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16668, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16656, + "src": "31923:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16669, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16658, + "src": "31927:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16670, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16660, + "src": "31931:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2488b414330cbd4ddab2b849dacd8bed50b19b82318ec6e4a5ccdf72ee519553", + "typeString": "literal_string \"log(uint256,address,address,address)\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16664, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "31855:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16665, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "31855:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16671, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31855:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16663, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "31839:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "31839:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16673, + "nodeType": "ExpressionStatement", + "src": "31839:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31763:3:5", + "parameters": { + "id": 16661, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16654, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31775:2:5", + "nodeType": "VariableDeclaration", + "scope": 16675, + "src": "31767:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16653, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31767:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16656, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31787:2:5", + "nodeType": "VariableDeclaration", + "scope": 16675, + "src": "31779:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16655, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31779:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16658, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31799:2:5", + "nodeType": "VariableDeclaration", + "scope": 16675, + "src": "31791:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16657, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31791:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16660, + "mutability": "mutable", + "name": "p3", + "nameLocation": "31811:2:5", + "nodeType": "VariableDeclaration", + "scope": 16675, + "src": "31803:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16659, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "31803:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "31766:48:5" + }, + "returnParameters": { + "id": 16662, + "nodeType": "ParameterList", + "parameters": [], + "src": "31829:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16698, + "nodeType": "FunctionDefinition", + "src": "31948:193:5", + "body": { + "id": 16697, + "nodeType": "Block", + "src": "32029:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c75696e7432353629", + "id": 16689, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32079:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a7a8785394d9aadf7945b4e3d27726dea716dc88e3f64cc80b3aa9abbd2751c5", + "typeString": "literal_string \"log(string,uint256,uint256,uint256)\"" + }, + "value": "log(string,uint256,uint256,uint256)" + }, + { + "id": 16690, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16677, + "src": "32118:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16691, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16679, + "src": "32122:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16692, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16681, + "src": "32126:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16693, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16683, + "src": "32130:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a7a8785394d9aadf7945b4e3d27726dea716dc88e3f64cc80b3aa9abbd2751c5", + "typeString": "literal_string \"log(string,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16687, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32055:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16688, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32055:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32055:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16686, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "32039:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32039:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16696, + "nodeType": "ExpressionStatement", + "src": "32039:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "31957:3:5", + "parameters": { + "id": 16684, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16677, + "mutability": "mutable", + "name": "p0", + "nameLocation": "31975:2:5", + "nodeType": "VariableDeclaration", + "scope": 16698, + "src": "31961:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16676, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "31961:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16679, + "mutability": "mutable", + "name": "p1", + "nameLocation": "31987:2:5", + "nodeType": "VariableDeclaration", + "scope": 16698, + "src": "31979:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16678, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31979:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16681, + "mutability": "mutable", + "name": "p2", + "nameLocation": "31999:2:5", + "nodeType": "VariableDeclaration", + "scope": 16698, + "src": "31991:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16680, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "31991:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16683, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32011:2:5", + "nodeType": "VariableDeclaration", + "scope": 16698, + "src": "32003:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16682, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32003:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "31960:54:5" + }, + "returnParameters": { + "id": 16685, + "nodeType": "ParameterList", + "parameters": [], + "src": "32029:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16721, + "nodeType": "FunctionDefinition", + "src": "32147:198:5", + "body": { + "id": 16720, + "nodeType": "Block", + "src": "32234:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c737472696e6729", + "id": 16712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32284:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_854b34964800cd321ba295da547026c9cfe69753667a81487e80d237f63c927f", + "typeString": "literal_string \"log(string,uint256,uint256,string)\"" + }, + "value": "log(string,uint256,uint256,string)" + }, + { + "id": 16713, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16700, + "src": "32322:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16714, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16702, + "src": "32326:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16715, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16704, + "src": "32330:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16716, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16706, + "src": "32334:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_854b34964800cd321ba295da547026c9cfe69753667a81487e80d237f63c927f", + "typeString": "literal_string \"log(string,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16710, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32260:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32260:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16717, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32260:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16709, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "32244:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32244:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16719, + "nodeType": "ExpressionStatement", + "src": "32244:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32156:3:5", + "parameters": { + "id": 16707, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16700, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32174:2:5", + "nodeType": "VariableDeclaration", + "scope": 16721, + "src": "32160:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16699, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32160:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16702, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32186:2:5", + "nodeType": "VariableDeclaration", + "scope": 16721, + "src": "32178:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16701, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32178:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16704, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32198:2:5", + "nodeType": "VariableDeclaration", + "scope": 16721, + "src": "32190:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16703, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32190:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16706, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32216:2:5", + "nodeType": "VariableDeclaration", + "scope": 16721, + "src": "32202:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16705, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32202:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32159:60:5" + }, + "returnParameters": { + "id": 16708, + "nodeType": "ParameterList", + "parameters": [], + "src": "32234:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16744, + "nodeType": "FunctionDefinition", + "src": "32351:187:5", + "body": { + "id": 16743, + "nodeType": "Block", + "src": "32429:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c626f6f6c29", + "id": 16735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32479:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7626db92bcbe8fb38799da91134ebae6bc6c7b10cb0db567e752720b8fd9ae0f", + "typeString": "literal_string \"log(string,uint256,uint256,bool)\"" + }, + "value": "log(string,uint256,uint256,bool)" + }, + { + "id": 16736, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16723, + "src": "32515:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16737, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16725, + "src": "32519:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16738, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16727, + "src": "32523:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16739, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16729, + "src": "32527:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7626db92bcbe8fb38799da91134ebae6bc6c7b10cb0db567e752720b8fd9ae0f", + "typeString": "literal_string \"log(string,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32455:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32455:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32455:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16732, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "32439:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32439:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16742, + "nodeType": "ExpressionStatement", + "src": "32439:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32360:3:5", + "parameters": { + "id": 16730, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16723, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32378:2:5", + "nodeType": "VariableDeclaration", + "scope": 16744, + "src": "32364:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16722, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32364:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16725, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32390:2:5", + "nodeType": "VariableDeclaration", + "scope": 16744, + "src": "32382:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16724, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32382:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16727, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32402:2:5", + "nodeType": "VariableDeclaration", + "scope": 16744, + "src": "32394:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16726, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32394:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16729, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32411:2:5", + "nodeType": "VariableDeclaration", + "scope": 16744, + "src": "32406:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16728, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "32406:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "32363:51:5" + }, + "returnParameters": { + "id": 16731, + "nodeType": "ParameterList", + "parameters": [], + "src": "32429:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16767, + "nodeType": "FunctionDefinition", + "src": "32544:193:5", + "body": { + "id": 16766, + "nodeType": "Block", + "src": "32625:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c75696e743235362c6164647265737329", + "id": 16758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32675:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e21de278b3902dab5803384c9ad03fb95c973bc87490e387079e41c7f244f118", + "typeString": "literal_string \"log(string,uint256,uint256,address)\"" + }, + "value": "log(string,uint256,uint256,address)" + }, + { + "id": 16759, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16746, + "src": "32714:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16760, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16748, + "src": "32718:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16761, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16750, + "src": "32722:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16762, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16752, + "src": "32726:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e21de278b3902dab5803384c9ad03fb95c973bc87490e387079e41c7f244f118", + "typeString": "literal_string \"log(string,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16756, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32651:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16757, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32651:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32651:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16755, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "32635:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32635:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16765, + "nodeType": "ExpressionStatement", + "src": "32635:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32553:3:5", + "parameters": { + "id": 16753, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16746, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32571:2:5", + "nodeType": "VariableDeclaration", + "scope": 16767, + "src": "32557:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16745, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32557:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16748, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32583:2:5", + "nodeType": "VariableDeclaration", + "scope": 16767, + "src": "32575:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16747, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32575:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16750, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32595:2:5", + "nodeType": "VariableDeclaration", + "scope": 16767, + "src": "32587:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16749, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32587:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16752, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32607:2:5", + "nodeType": "VariableDeclaration", + "scope": 16767, + "src": "32599:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16751, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "32599:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "32556:54:5" + }, + "returnParameters": { + "id": 16754, + "nodeType": "ParameterList", + "parameters": [], + "src": "32625:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16790, + "nodeType": "FunctionDefinition", + "src": "32743:198:5", + "body": { + "id": 16789, + "nodeType": "Block", + "src": "32830:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c75696e7432353629", + "id": 16781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "32880:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c67ea9d1db4353b82da41ad5e5b85243320ba3a89399b41c13eee1ab804e84c9", + "typeString": "literal_string \"log(string,uint256,string,uint256)\"" + }, + "value": "log(string,uint256,string,uint256)" + }, + { + "id": 16782, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16769, + "src": "32918:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16783, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16771, + "src": "32922:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16784, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16773, + "src": "32926:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16785, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16775, + "src": "32930:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c67ea9d1db4353b82da41ad5e5b85243320ba3a89399b41c13eee1ab804e84c9", + "typeString": "literal_string \"log(string,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16779, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "32856:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16780, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "32856:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16786, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32856:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16778, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "32840:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "32840:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16788, + "nodeType": "ExpressionStatement", + "src": "32840:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32752:3:5", + "parameters": { + "id": 16776, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16769, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32770:2:5", + "nodeType": "VariableDeclaration", + "scope": 16790, + "src": "32756:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16768, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32756:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16771, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32782:2:5", + "nodeType": "VariableDeclaration", + "scope": 16790, + "src": "32774:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16770, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32774:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16773, + "mutability": "mutable", + "name": "p2", + "nameLocation": "32800:2:5", + "nodeType": "VariableDeclaration", + "scope": 16790, + "src": "32786:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16772, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32786:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16775, + "mutability": "mutable", + "name": "p3", + "nameLocation": "32812:2:5", + "nodeType": "VariableDeclaration", + "scope": 16790, + "src": "32804:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16774, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32804:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "32755:60:5" + }, + "returnParameters": { + "id": 16777, + "nodeType": "ParameterList", + "parameters": [], + "src": "32830:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16813, + "nodeType": "FunctionDefinition", + "src": "32947:203:5", + "body": { + "id": 16812, + "nodeType": "Block", + "src": "33040:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c737472696e6729", + "id": 16804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33090:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ab84e1fba099b79ad99dc62242807811428e5c36b5f473a3b74e319a04c4089", + "typeString": "literal_string \"log(string,uint256,string,string)\"" + }, + "value": "log(string,uint256,string,string)" + }, + { + "id": 16805, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16792, + "src": "33127:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16806, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16794, + "src": "33131:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16807, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16796, + "src": "33135:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16808, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16798, + "src": "33139:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ab84e1fba099b79ad99dc62242807811428e5c36b5f473a3b74e319a04c4089", + "typeString": "literal_string \"log(string,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16802, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33066:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16803, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33066:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33066:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16801, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "33050:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33050:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16811, + "nodeType": "ExpressionStatement", + "src": "33050:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "32956:3:5", + "parameters": { + "id": 16799, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16792, + "mutability": "mutable", + "name": "p0", + "nameLocation": "32974:2:5", + "nodeType": "VariableDeclaration", + "scope": 16813, + "src": "32960:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16791, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32960:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16794, + "mutability": "mutable", + "name": "p1", + "nameLocation": "32986:2:5", + "nodeType": "VariableDeclaration", + "scope": 16813, + "src": "32978:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16793, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "32978:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16796, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33004:2:5", + "nodeType": "VariableDeclaration", + "scope": 16813, + "src": "32990:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16795, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "32990:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16798, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33022:2:5", + "nodeType": "VariableDeclaration", + "scope": 16813, + "src": "33008:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16797, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33008:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "32959:66:5" + }, + "returnParameters": { + "id": 16800, + "nodeType": "ParameterList", + "parameters": [], + "src": "33040:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16836, + "nodeType": "FunctionDefinition", + "src": "33156:192:5", + "body": { + "id": 16835, + "nodeType": "Block", + "src": "33240:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c626f6f6c29", + "id": 16827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33290:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7d24491d69f4bc88a6e68cd8228b6698af11fe37f60f65c80e3f11428a8eba2f", + "typeString": "literal_string \"log(string,uint256,string,bool)\"" + }, + "value": "log(string,uint256,string,bool)" + }, + { + "id": 16828, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16815, + "src": "33325:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16829, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16817, + "src": "33329:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16830, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16819, + "src": "33333:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16831, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16821, + "src": "33337:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7d24491d69f4bc88a6e68cd8228b6698af11fe37f60f65c80e3f11428a8eba2f", + "typeString": "literal_string \"log(string,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16825, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33266:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16826, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33266:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16832, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33266:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16824, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "33250:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33250:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16834, + "nodeType": "ExpressionStatement", + "src": "33250:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33165:3:5", + "parameters": { + "id": 16822, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16815, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33183:2:5", + "nodeType": "VariableDeclaration", + "scope": 16836, + "src": "33169:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16814, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33169:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16817, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33195:2:5", + "nodeType": "VariableDeclaration", + "scope": 16836, + "src": "33187:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16816, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33187:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16819, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33213:2:5", + "nodeType": "VariableDeclaration", + "scope": 16836, + "src": "33199:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16818, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33199:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16821, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33222:2:5", + "nodeType": "VariableDeclaration", + "scope": 16836, + "src": "33217:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16820, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33217:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33168:57:5" + }, + "returnParameters": { + "id": 16823, + "nodeType": "ParameterList", + "parameters": [], + "src": "33240:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16859, + "nodeType": "FunctionDefinition", + "src": "33354:198:5", + "body": { + "id": 16858, + "nodeType": "Block", + "src": "33441:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c737472696e672c6164647265737329", + "id": 16850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33491:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7c4632a48572fa2d4647539e525c9742d692f8e780540d6116f897ab472257cb", + "typeString": "literal_string \"log(string,uint256,string,address)\"" + }, + "value": "log(string,uint256,string,address)" + }, + { + "id": 16851, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16838, + "src": "33529:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16852, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16840, + "src": "33533:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16853, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16842, + "src": "33537:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16854, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16844, + "src": "33541:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7c4632a48572fa2d4647539e525c9742d692f8e780540d6116f897ab472257cb", + "typeString": "literal_string \"log(string,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16848, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33467:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16849, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33467:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33467:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16847, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "33451:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33451:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16857, + "nodeType": "ExpressionStatement", + "src": "33451:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33363:3:5", + "parameters": { + "id": 16845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16838, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33381:2:5", + "nodeType": "VariableDeclaration", + "scope": 16859, + "src": "33367:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16837, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33367:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16840, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33393:2:5", + "nodeType": "VariableDeclaration", + "scope": 16859, + "src": "33385:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16839, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33385:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16842, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33411:2:5", + "nodeType": "VariableDeclaration", + "scope": 16859, + "src": "33397:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16841, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33397:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16844, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33423:2:5", + "nodeType": "VariableDeclaration", + "scope": 16859, + "src": "33415:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "33415:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "33366:60:5" + }, + "returnParameters": { + "id": 16846, + "nodeType": "ParameterList", + "parameters": [], + "src": "33441:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16882, + "nodeType": "FunctionDefinition", + "src": "33558:187:5", + "body": { + "id": 16881, + "nodeType": "Block", + "src": "33636:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c75696e7432353629", + "id": 16873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33686:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e41b6f6f58a4f880a3266f23bebaff73175ff4306317c20982bc2eabc04edd13", + "typeString": "literal_string \"log(string,uint256,bool,uint256)\"" + }, + "value": "log(string,uint256,bool,uint256)" + }, + { + "id": 16874, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16861, + "src": "33722:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16875, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16863, + "src": "33726:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16876, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16865, + "src": "33730:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16877, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16867, + "src": "33734:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e41b6f6f58a4f880a3266f23bebaff73175ff4306317c20982bc2eabc04edd13", + "typeString": "literal_string \"log(string,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16871, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33662:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16872, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33662:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16878, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33662:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16870, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "33646:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33646:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16880, + "nodeType": "ExpressionStatement", + "src": "33646:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33567:3:5", + "parameters": { + "id": 16868, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16861, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33585:2:5", + "nodeType": "VariableDeclaration", + "scope": 16882, + "src": "33571:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16860, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33571:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16863, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33597:2:5", + "nodeType": "VariableDeclaration", + "scope": 16882, + "src": "33589:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16862, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33589:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16865, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33606:2:5", + "nodeType": "VariableDeclaration", + "scope": 16882, + "src": "33601:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16864, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33601:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16867, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33618:2:5", + "nodeType": "VariableDeclaration", + "scope": 16882, + "src": "33610:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16866, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33610:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "33570:51:5" + }, + "returnParameters": { + "id": 16869, + "nodeType": "ParameterList", + "parameters": [], + "src": "33636:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16905, + "nodeType": "FunctionDefinition", + "src": "33751:192:5", + "body": { + "id": 16904, + "nodeType": "Block", + "src": "33835:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c737472696e6729", + "id": 16896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "33885:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_abf73a9831ab2bdeb8da9d06a81eab42196b20e336ab670ecba37bac94839d87", + "typeString": "literal_string \"log(string,uint256,bool,string)\"" + }, + "value": "log(string,uint256,bool,string)" + }, + { + "id": 16897, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16884, + "src": "33920:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16898, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16886, + "src": "33924:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16899, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16888, + "src": "33928:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16900, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16890, + "src": "33932:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_abf73a9831ab2bdeb8da9d06a81eab42196b20e336ab670ecba37bac94839d87", + "typeString": "literal_string \"log(string,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16894, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "33861:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16895, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "33861:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33861:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16893, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "33845:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "33845:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16903, + "nodeType": "ExpressionStatement", + "src": "33845:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33760:3:5", + "parameters": { + "id": 16891, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16884, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33778:2:5", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "33764:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16883, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33764:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16886, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33790:2:5", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "33782:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16885, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33782:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16888, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33799:2:5", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "33794:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16887, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33794:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16890, + "mutability": "mutable", + "name": "p3", + "nameLocation": "33817:2:5", + "nodeType": "VariableDeclaration", + "scope": 16905, + "src": "33803:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16889, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33803:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "33763:57:5" + }, + "returnParameters": { + "id": 16892, + "nodeType": "ParameterList", + "parameters": [], + "src": "33835:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16928, + "nodeType": "FunctionDefinition", + "src": "33949:181:5", + "body": { + "id": 16927, + "nodeType": "Block", + "src": "34024:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c626f6f6c29", + "id": 16919, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34074:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_354c36d6798abb81721fb2beaef51c92cab9d4cf16be10f0a4724648784ecb76", + "typeString": "literal_string \"log(string,uint256,bool,bool)\"" + }, + "value": "log(string,uint256,bool,bool)" + }, + { + "id": 16920, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16907, + "src": "34107:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16921, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16909, + "src": "34111:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16922, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16911, + "src": "34115:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16923, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16913, + "src": "34119:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_354c36d6798abb81721fb2beaef51c92cab9d4cf16be10f0a4724648784ecb76", + "typeString": "literal_string \"log(string,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 16917, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34050:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16918, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34050:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34050:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16916, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "34034:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34034:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16926, + "nodeType": "ExpressionStatement", + "src": "34034:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "33958:3:5", + "parameters": { + "id": 16914, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16907, + "mutability": "mutable", + "name": "p0", + "nameLocation": "33976:2:5", + "nodeType": "VariableDeclaration", + "scope": 16928, + "src": "33962:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16906, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "33962:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16909, + "mutability": "mutable", + "name": "p1", + "nameLocation": "33988:2:5", + "nodeType": "VariableDeclaration", + "scope": 16928, + "src": "33980:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16908, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "33980:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16911, + "mutability": "mutable", + "name": "p2", + "nameLocation": "33997:2:5", + "nodeType": "VariableDeclaration", + "scope": 16928, + "src": "33992:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16910, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "33992:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16913, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34006:2:5", + "nodeType": "VariableDeclaration", + "scope": 16928, + "src": "34001:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16912, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34001:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "33961:48:5" + }, + "returnParameters": { + "id": 16915, + "nodeType": "ParameterList", + "parameters": [], + "src": "34024:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16951, + "nodeType": "FunctionDefinition", + "src": "34136:187:5", + "body": { + "id": 16950, + "nodeType": "Block", + "src": "34214:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c626f6f6c2c6164647265737329", + "id": 16942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34264:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0e95b9833a204b7ba633bd63a60ec523906565f2c86d8936f7ff3e9937880f7", + "typeString": "literal_string \"log(string,uint256,bool,address)\"" + }, + "value": "log(string,uint256,bool,address)" + }, + { + "id": 16943, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16930, + "src": "34300:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16944, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16932, + "src": "34304:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16945, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16934, + "src": "34308:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 16946, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16936, + "src": "34312:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0e95b9833a204b7ba633bd63a60ec523906565f2c86d8936f7ff3e9937880f7", + "typeString": "literal_string \"log(string,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 16940, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34240:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16941, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34240:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34240:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16939, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "34224:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34224:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16949, + "nodeType": "ExpressionStatement", + "src": "34224:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34145:3:5", + "parameters": { + "id": 16937, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16930, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34163:2:5", + "nodeType": "VariableDeclaration", + "scope": 16951, + "src": "34149:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16929, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34149:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16932, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34175:2:5", + "nodeType": "VariableDeclaration", + "scope": 16951, + "src": "34167:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16931, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34167:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16934, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34184:2:5", + "nodeType": "VariableDeclaration", + "scope": 16951, + "src": "34179:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 16933, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34179:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16936, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34196:2:5", + "nodeType": "VariableDeclaration", + "scope": 16951, + "src": "34188:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16935, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34188:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34148:51:5" + }, + "returnParameters": { + "id": 16938, + "nodeType": "ParameterList", + "parameters": [], + "src": "34214:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16974, + "nodeType": "FunctionDefinition", + "src": "34329:193:5", + "body": { + "id": 16973, + "nodeType": "Block", + "src": "34410:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c75696e7432353629", + "id": 16965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34460:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4f04fdc6b6271b036262883bae0d1ea5155524010fed0023b5c71c574fb937ff", + "typeString": "literal_string \"log(string,uint256,address,uint256)\"" + }, + "value": "log(string,uint256,address,uint256)" + }, + { + "id": 16966, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16953, + "src": "34499:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16967, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16955, + "src": "34503:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16968, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16957, + "src": "34507:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16969, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16959, + "src": "34511:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4f04fdc6b6271b036262883bae0d1ea5155524010fed0023b5c71c574fb937ff", + "typeString": "literal_string \"log(string,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 16963, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34436:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16964, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34436:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34436:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16962, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "34420:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34420:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16972, + "nodeType": "ExpressionStatement", + "src": "34420:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34338:3:5", + "parameters": { + "id": 16960, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16953, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34356:2:5", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "34342:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16952, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34342:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16955, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34368:2:5", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "34360:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16954, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34360:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16957, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34380:2:5", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "34372:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16956, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34372:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16959, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34392:2:5", + "nodeType": "VariableDeclaration", + "scope": 16974, + "src": "34384:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16958, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34384:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "34341:54:5" + }, + "returnParameters": { + "id": 16961, + "nodeType": "ParameterList", + "parameters": [], + "src": "34410:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 16997, + "nodeType": "FunctionDefinition", + "src": "34528:198:5", + "body": { + "id": 16996, + "nodeType": "Block", + "src": "34615:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c737472696e6729", + "id": 16988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34665:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9ffb2f93ff043d0a86ff6dc2ddf23d28dfc95ecde23d406177dfe6f19d070d2b", + "typeString": "literal_string \"log(string,uint256,address,string)\"" + }, + "value": "log(string,uint256,address,string)" + }, + { + "id": 16989, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16976, + "src": "34703:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 16990, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16978, + "src": "34707:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 16991, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16980, + "src": "34711:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 16992, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16982, + "src": "34715:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9ffb2f93ff043d0a86ff6dc2ddf23d28dfc95ecde23d406177dfe6f19d070d2b", + "typeString": "literal_string \"log(string,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 16986, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34641:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 16987, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34641:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 16993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34641:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 16985, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "34625:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 16994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34625:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 16995, + "nodeType": "ExpressionStatement", + "src": "34625:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34537:3:5", + "parameters": { + "id": 16983, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16976, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34555:2:5", + "nodeType": "VariableDeclaration", + "scope": 16997, + "src": "34541:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16975, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34541:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16978, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34567:2:5", + "nodeType": "VariableDeclaration", + "scope": 16997, + "src": "34559:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 16977, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34559:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16980, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34579:2:5", + "nodeType": "VariableDeclaration", + "scope": 16997, + "src": "34571:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 16979, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34571:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 16982, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34597:2:5", + "nodeType": "VariableDeclaration", + "scope": 16997, + "src": "34583:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16981, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34583:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "34540:60:5" + }, + "returnParameters": { + "id": 16984, + "nodeType": "ParameterList", + "parameters": [], + "src": "34615:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17020, + "nodeType": "FunctionDefinition", + "src": "34732:187:5", + "body": { + "id": 17019, + "nodeType": "Block", + "src": "34810:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c626f6f6c29", + "id": 17011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "34860:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_82112a429657399db0318af6ca78ff56626aa907939e7cf56b60b07035dcc190", + "typeString": "literal_string \"log(string,uint256,address,bool)\"" + }, + "value": "log(string,uint256,address,bool)" + }, + { + "id": 17012, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 16999, + "src": "34896:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17013, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17001, + "src": "34900:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17014, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17003, + "src": "34904:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17015, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17005, + "src": "34908:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_82112a429657399db0318af6ca78ff56626aa907939e7cf56b60b07035dcc190", + "typeString": "literal_string \"log(string,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17009, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "34836:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17010, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "34836:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17016, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34836:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17008, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "34820:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "34820:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17018, + "nodeType": "ExpressionStatement", + "src": "34820:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34741:3:5", + "parameters": { + "id": 17006, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 16999, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34759:2:5", + "nodeType": "VariableDeclaration", + "scope": 17020, + "src": "34745:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 16998, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34745:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17001, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34771:2:5", + "nodeType": "VariableDeclaration", + "scope": 17020, + "src": "34763:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17000, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34763:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17003, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34783:2:5", + "nodeType": "VariableDeclaration", + "scope": 17020, + "src": "34775:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34775:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17005, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34792:2:5", + "nodeType": "VariableDeclaration", + "scope": 17020, + "src": "34787:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17004, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "34787:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "34744:51:5" + }, + "returnParameters": { + "id": 17007, + "nodeType": "ParameterList", + "parameters": [], + "src": "34810:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17043, + "nodeType": "FunctionDefinition", + "src": "34925:193:5", + "body": { + "id": 17042, + "nodeType": "Block", + "src": "35006:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c75696e743235362c616464726573732c6164647265737329", + "id": 17034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35056:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ea2b7aea4409bbe3ef8ca502419b3574b002a6123a1f864be076316b8efcd1d", + "typeString": "literal_string \"log(string,uint256,address,address)\"" + }, + "value": "log(string,uint256,address,address)" + }, + { + "id": 17035, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17022, + "src": "35095:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17036, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17024, + "src": "35099:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17037, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17026, + "src": "35103:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17038, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17028, + "src": "35107:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ea2b7aea4409bbe3ef8ca502419b3574b002a6123a1f864be076316b8efcd1d", + "typeString": "literal_string \"log(string,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17032, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35032:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17033, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35032:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17039, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35032:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17031, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "35016:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35016:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17041, + "nodeType": "ExpressionStatement", + "src": "35016:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "34934:3:5", + "parameters": { + "id": 17029, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17022, + "mutability": "mutable", + "name": "p0", + "nameLocation": "34952:2:5", + "nodeType": "VariableDeclaration", + "scope": 17043, + "src": "34938:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17021, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "34938:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17024, + "mutability": "mutable", + "name": "p1", + "nameLocation": "34964:2:5", + "nodeType": "VariableDeclaration", + "scope": 17043, + "src": "34956:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17023, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "34956:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17026, + "mutability": "mutable", + "name": "p2", + "nameLocation": "34976:2:5", + "nodeType": "VariableDeclaration", + "scope": 17043, + "src": "34968:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17025, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34968:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17028, + "mutability": "mutable", + "name": "p3", + "nameLocation": "34988:2:5", + "nodeType": "VariableDeclaration", + "scope": 17043, + "src": "34980:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17027, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "34980:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "34937:54:5" + }, + "returnParameters": { + "id": 17030, + "nodeType": "ParameterList", + "parameters": [], + "src": "35006:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17066, + "nodeType": "FunctionDefinition", + "src": "35124:198:5", + "body": { + "id": 17065, + "nodeType": "Block", + "src": "35211:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c75696e7432353629", + "id": 17057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35261:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f45d7d2cd1abe030b09347ce21ce66b503ffdad3e7a1ad6df9e55da5d9367776", + "typeString": "literal_string \"log(string,string,uint256,uint256)\"" + }, + "value": "log(string,string,uint256,uint256)" + }, + { + "id": 17058, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17045, + "src": "35299:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17059, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17047, + "src": "35303:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17060, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17049, + "src": "35307:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17061, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17051, + "src": "35311:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f45d7d2cd1abe030b09347ce21ce66b503ffdad3e7a1ad6df9e55da5d9367776", + "typeString": "literal_string \"log(string,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17055, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35237:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17056, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35237:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17062, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35237:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17054, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "35221:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35221:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17064, + "nodeType": "ExpressionStatement", + "src": "35221:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35133:3:5", + "parameters": { + "id": 17052, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17045, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35151:2:5", + "nodeType": "VariableDeclaration", + "scope": 17066, + "src": "35137:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17044, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35137:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17047, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35169:2:5", + "nodeType": "VariableDeclaration", + "scope": 17066, + "src": "35155:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17046, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35155:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17049, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35181:2:5", + "nodeType": "VariableDeclaration", + "scope": 17066, + "src": "35173:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35173:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17051, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35193:2:5", + "nodeType": "VariableDeclaration", + "scope": 17066, + "src": "35185:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17050, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35185:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35136:60:5" + }, + "returnParameters": { + "id": 17053, + "nodeType": "ParameterList", + "parameters": [], + "src": "35211:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17089, + "nodeType": "FunctionDefinition", + "src": "35328:203:5", + "body": { + "id": 17088, + "nodeType": "Block", + "src": "35421:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c737472696e6729", + "id": 17080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35471:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d1a971aebb8f2fbb7526a470ca55e409230d59ee63217090d29ce11b768e909", + "typeString": "literal_string \"log(string,string,uint256,string)\"" + }, + "value": "log(string,string,uint256,string)" + }, + { + "id": 17081, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17068, + "src": "35508:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17082, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17070, + "src": "35512:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17083, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17072, + "src": "35516:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17084, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17074, + "src": "35520:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d1a971aebb8f2fbb7526a470ca55e409230d59ee63217090d29ce11b768e909", + "typeString": "literal_string \"log(string,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17078, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35447:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17079, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35447:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35447:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17077, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "35431:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35431:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17087, + "nodeType": "ExpressionStatement", + "src": "35431:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35337:3:5", + "parameters": { + "id": 17075, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17068, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35355:2:5", + "nodeType": "VariableDeclaration", + "scope": 17089, + "src": "35341:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17067, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35341:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17070, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35373:2:5", + "nodeType": "VariableDeclaration", + "scope": 17089, + "src": "35359:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17069, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35359:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17072, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35385:2:5", + "nodeType": "VariableDeclaration", + "scope": 17089, + "src": "35377:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17071, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35377:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17074, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35403:2:5", + "nodeType": "VariableDeclaration", + "scope": 17089, + "src": "35389:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17073, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35389:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "35340:66:5" + }, + "returnParameters": { + "id": 17076, + "nodeType": "ParameterList", + "parameters": [], + "src": "35421:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17112, + "nodeType": "FunctionDefinition", + "src": "35537:192:5", + "body": { + "id": 17111, + "nodeType": "Block", + "src": "35621:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c626f6f6c29", + "id": 17103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35671:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c3a8a6546b97cf01562dd9ca797c4955f3bab9bc163d02081737c20b686446d2", + "typeString": "literal_string \"log(string,string,uint256,bool)\"" + }, + "value": "log(string,string,uint256,bool)" + }, + { + "id": 17104, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17091, + "src": "35706:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17105, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17093, + "src": "35710:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17106, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17095, + "src": "35714:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17107, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17097, + "src": "35718:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c3a8a6546b97cf01562dd9ca797c4955f3bab9bc163d02081737c20b686446d2", + "typeString": "literal_string \"log(string,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17101, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35647:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17102, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35647:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35647:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17100, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "35631:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35631:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17110, + "nodeType": "ExpressionStatement", + "src": "35631:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35546:3:5", + "parameters": { + "id": 17098, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17091, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35564:2:5", + "nodeType": "VariableDeclaration", + "scope": 17112, + "src": "35550:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17090, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35550:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17093, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35582:2:5", + "nodeType": "VariableDeclaration", + "scope": 17112, + "src": "35568:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17092, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35568:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17095, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35594:2:5", + "nodeType": "VariableDeclaration", + "scope": 17112, + "src": "35586:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17094, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35586:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17097, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35603:2:5", + "nodeType": "VariableDeclaration", + "scope": 17112, + "src": "35598:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17096, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "35598:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "35549:57:5" + }, + "returnParameters": { + "id": 17099, + "nodeType": "ParameterList", + "parameters": [], + "src": "35621:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17135, + "nodeType": "FunctionDefinition", + "src": "35735:198:5", + "body": { + "id": 17134, + "nodeType": "Block", + "src": "35822:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c75696e743235362c6164647265737329", + "id": 17126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "35872:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1023f7b286378387abf24b7020dbd1ddde789519cf7f13da727146a2a8a61fc6", + "typeString": "literal_string \"log(string,string,uint256,address)\"" + }, + "value": "log(string,string,uint256,address)" + }, + { + "id": 17127, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17114, + "src": "35910:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17128, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17116, + "src": "35914:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17129, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17118, + "src": "35918:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17130, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17120, + "src": "35922:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1023f7b286378387abf24b7020dbd1ddde789519cf7f13da727146a2a8a61fc6", + "typeString": "literal_string \"log(string,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17124, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "35848:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "35848:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35848:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17123, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "35832:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "35832:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17133, + "nodeType": "ExpressionStatement", + "src": "35832:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35744:3:5", + "parameters": { + "id": 17121, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17114, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35762:2:5", + "nodeType": "VariableDeclaration", + "scope": 17135, + "src": "35748:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17113, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35748:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17116, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35780:2:5", + "nodeType": "VariableDeclaration", + "scope": 17135, + "src": "35766:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17115, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35766:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17118, + "mutability": "mutable", + "name": "p2", + "nameLocation": "35792:2:5", + "nodeType": "VariableDeclaration", + "scope": 17135, + "src": "35784:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17117, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "35784:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17120, + "mutability": "mutable", + "name": "p3", + "nameLocation": "35804:2:5", + "nodeType": "VariableDeclaration", + "scope": 17135, + "src": "35796:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17119, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "35796:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "35747:60:5" + }, + "returnParameters": { + "id": 17122, + "nodeType": "ParameterList", + "parameters": [], + "src": "35822:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17158, + "nodeType": "FunctionDefinition", + "src": "35939:203:5", + "body": { + "id": 17157, + "nodeType": "Block", + "src": "36032:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c75696e7432353629", + "id": 17149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36082:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8eafb02b2f27070f4cef3c26d2b8a8d041c7bf077352780062dc5a70550ac689", + "typeString": "literal_string \"log(string,string,string,uint256)\"" + }, + "value": "log(string,string,string,uint256)" + }, + { + "id": 17150, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17137, + "src": "36119:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17151, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17139, + "src": "36123:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17152, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17141, + "src": "36127:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17153, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17143, + "src": "36131:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8eafb02b2f27070f4cef3c26d2b8a8d041c7bf077352780062dc5a70550ac689", + "typeString": "literal_string \"log(string,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17147, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36058:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36058:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17154, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36058:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17146, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "36042:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36042:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17156, + "nodeType": "ExpressionStatement", + "src": "36042:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "35948:3:5", + "parameters": { + "id": 17144, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17137, + "mutability": "mutable", + "name": "p0", + "nameLocation": "35966:2:5", + "nodeType": "VariableDeclaration", + "scope": 17158, + "src": "35952:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17136, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35952:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17139, + "mutability": "mutable", + "name": "p1", + "nameLocation": "35984:2:5", + "nodeType": "VariableDeclaration", + "scope": 17158, + "src": "35970:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17138, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35970:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17141, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36002:2:5", + "nodeType": "VariableDeclaration", + "scope": 17158, + "src": "35988:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17140, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "35988:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17143, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36014:2:5", + "nodeType": "VariableDeclaration", + "scope": 17158, + "src": "36006:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17142, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "36006:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "35951:66:5" + }, + "returnParameters": { + "id": 17145, + "nodeType": "ParameterList", + "parameters": [], + "src": "36032:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17181, + "nodeType": "FunctionDefinition", + "src": "36148:208:5", + "body": { + "id": 17180, + "nodeType": "Block", + "src": "36247:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c737472696e6729", + "id": 17172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36297:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + "value": "log(string,string,string,string)" + }, + { + "id": 17173, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17160, + "src": "36333:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17174, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17162, + "src": "36337:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17175, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17164, + "src": "36341:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17176, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17166, + "src": "36345:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_de68f20a8e88f68d54c5aa294860ee37b58680632686e2f1101e4e042a2cbcbe", + "typeString": "literal_string \"log(string,string,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17170, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36273:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36273:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17177, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36273:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17169, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "36257:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36257:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17179, + "nodeType": "ExpressionStatement", + "src": "36257:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36157:3:5", + "parameters": { + "id": 17167, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17160, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36175:2:5", + "nodeType": "VariableDeclaration", + "scope": 17181, + "src": "36161:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17159, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36161:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17162, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36193:2:5", + "nodeType": "VariableDeclaration", + "scope": 17181, + "src": "36179:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17161, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36179:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17164, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36211:2:5", + "nodeType": "VariableDeclaration", + "scope": 17181, + "src": "36197:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17163, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36197:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17166, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36229:2:5", + "nodeType": "VariableDeclaration", + "scope": 17181, + "src": "36215:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17165, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36215:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36160:72:5" + }, + "returnParameters": { + "id": 17168, + "nodeType": "ParameterList", + "parameters": [], + "src": "36247:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17204, + "nodeType": "FunctionDefinition", + "src": "36362:197:5", + "body": { + "id": 17203, + "nodeType": "Block", + "src": "36452:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c626f6f6c29", + "id": 17195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36502:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + "value": "log(string,string,string,bool)" + }, + { + "id": 17196, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17183, + "src": "36536:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17197, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17185, + "src": "36540:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17198, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17187, + "src": "36544:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17199, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17189, + "src": "36548:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2c1754ed9d3bc50669c3e71e3115dc4403f3cff35aa9b6b58799f80b5496f332", + "typeString": "literal_string \"log(string,string,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17193, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36478:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36478:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36478:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17192, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "36462:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36462:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17202, + "nodeType": "ExpressionStatement", + "src": "36462:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36371:3:5", + "parameters": { + "id": 17190, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17183, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36389:2:5", + "nodeType": "VariableDeclaration", + "scope": 17204, + "src": "36375:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17182, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36375:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17185, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36407:2:5", + "nodeType": "VariableDeclaration", + "scope": 17204, + "src": "36393:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17184, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36393:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17187, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36425:2:5", + "nodeType": "VariableDeclaration", + "scope": 17204, + "src": "36411:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17186, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36411:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17189, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36434:2:5", + "nodeType": "VariableDeclaration", + "scope": 17204, + "src": "36429:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17188, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36429:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "36374:63:5" + }, + "returnParameters": { + "id": 17191, + "nodeType": "ParameterList", + "parameters": [], + "src": "36452:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17227, + "nodeType": "FunctionDefinition", + "src": "36565:203:5", + "body": { + "id": 17226, + "nodeType": "Block", + "src": "36658:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c737472696e672c6164647265737329", + "id": 17218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36708:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + "value": "log(string,string,string,address)" + }, + { + "id": 17219, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17206, + "src": "36745:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17220, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17208, + "src": "36749:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17221, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17210, + "src": "36753:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17222, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17212, + "src": "36757:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d572f449cf1e446ea3ace51a34ce30628f4f1588a39dc5d550cefb210c5bb16", + "typeString": "literal_string \"log(string,string,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17216, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36684:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17217, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36684:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17223, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36684:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17215, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "36668:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36668:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17225, + "nodeType": "ExpressionStatement", + "src": "36668:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36574:3:5", + "parameters": { + "id": 17213, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17206, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36592:2:5", + "nodeType": "VariableDeclaration", + "scope": 17227, + "src": "36578:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17205, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36578:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17208, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36610:2:5", + "nodeType": "VariableDeclaration", + "scope": 17227, + "src": "36596:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17207, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36596:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17210, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36628:2:5", + "nodeType": "VariableDeclaration", + "scope": 17227, + "src": "36614:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17209, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36614:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17212, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36640:2:5", + "nodeType": "VariableDeclaration", + "scope": 17227, + "src": "36632:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17211, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "36632:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "36577:66:5" + }, + "returnParameters": { + "id": 17214, + "nodeType": "ParameterList", + "parameters": [], + "src": "36658:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17250, + "nodeType": "FunctionDefinition", + "src": "36774:192:5", + "body": { + "id": 17249, + "nodeType": "Block", + "src": "36858:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c75696e7432353629", + "id": 17241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "36908:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6aefad2ecee6d91421acc41f939bded56985ac5c9cf6e49011ee16b1bb31729", + "typeString": "literal_string \"log(string,string,bool,uint256)\"" + }, + "value": "log(string,string,bool,uint256)" + }, + { + "id": 17242, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17229, + "src": "36943:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17243, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17231, + "src": "36947:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17244, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17233, + "src": "36951:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17245, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17235, + "src": "36955:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6aefad2ecee6d91421acc41f939bded56985ac5c9cf6e49011ee16b1bb31729", + "typeString": "literal_string \"log(string,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17239, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "36884:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17240, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "36884:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17246, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36884:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17238, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "36868:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "36868:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17248, + "nodeType": "ExpressionStatement", + "src": "36868:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36783:3:5", + "parameters": { + "id": 17236, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17229, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36801:2:5", + "nodeType": "VariableDeclaration", + "scope": 17250, + "src": "36787:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17228, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36787:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17231, + "mutability": "mutable", + "name": "p1", + "nameLocation": "36819:2:5", + "nodeType": "VariableDeclaration", + "scope": 17250, + "src": "36805:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17230, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36805:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17233, + "mutability": "mutable", + "name": "p2", + "nameLocation": "36828:2:5", + "nodeType": "VariableDeclaration", + "scope": 17250, + "src": "36823:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17232, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "36823:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17235, + "mutability": "mutable", + "name": "p3", + "nameLocation": "36840:2:5", + "nodeType": "VariableDeclaration", + "scope": 17250, + "src": "36832:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17234, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "36832:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "36786:57:5" + }, + "returnParameters": { + "id": 17237, + "nodeType": "ParameterList", + "parameters": [], + "src": "36858:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17273, + "nodeType": "FunctionDefinition", + "src": "36972:197:5", + "body": { + "id": 17272, + "nodeType": "Block", + "src": "37062:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c737472696e6729", + "id": 17264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37112:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + "value": "log(string,string,bool,string)" + }, + { + "id": 17265, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17252, + "src": "37146:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17266, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17254, + "src": "37150:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17267, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17256, + "src": "37154:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17268, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17258, + "src": "37158:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5e84b0ea51a130c3c7e1443097f28cb5c541ea8487836ae7cb1ca9c6e683699b", + "typeString": "literal_string \"log(string,string,bool,string)\"" + }, + { + "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" + } + ], + "expression": { + "id": 17262, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37088:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17263, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37088:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17269, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37088:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17261, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "37072:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37072:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17271, + "nodeType": "ExpressionStatement", + "src": "37072:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "36981:3:5", + "parameters": { + "id": 17259, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17252, + "mutability": "mutable", + "name": "p0", + "nameLocation": "36999:2:5", + "nodeType": "VariableDeclaration", + "scope": 17273, + "src": "36985:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17251, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "36985:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17254, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37017:2:5", + "nodeType": "VariableDeclaration", + "scope": 17273, + "src": "37003:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17253, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37003:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17256, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37026:2:5", + "nodeType": "VariableDeclaration", + "scope": 17273, + "src": "37021:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17255, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37021:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17258, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37044:2:5", + "nodeType": "VariableDeclaration", + "scope": 17273, + "src": "37030:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17257, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37030:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "36984:63:5" + }, + "returnParameters": { + "id": 17260, + "nodeType": "ParameterList", + "parameters": [], + "src": "37062:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17296, + "nodeType": "FunctionDefinition", + "src": "37175:186:5", + "body": { + "id": 17295, + "nodeType": "Block", + "src": "37256:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c626f6f6c29", + "id": 17287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37306:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + "value": "log(string,string,bool,bool)" + }, + { + "id": 17288, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17275, + "src": "37338:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17289, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17277, + "src": "37342:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17290, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17279, + "src": "37346:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17291, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17281, + "src": "37350:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_40785869c0ea63ca2ccbcf7415552989c2f1ce04f151eb3b2bd695c64d21af10", + "typeString": "literal_string \"log(string,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17285, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37282:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17286, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37282:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37282:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17284, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "37266:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37266:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17294, + "nodeType": "ExpressionStatement", + "src": "37266:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37184:3:5", + "parameters": { + "id": 17282, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17275, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37202:2:5", + "nodeType": "VariableDeclaration", + "scope": 17296, + "src": "37188:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17274, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37188:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17277, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37220:2:5", + "nodeType": "VariableDeclaration", + "scope": 17296, + "src": "37206:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17276, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37206:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17279, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37229:2:5", + "nodeType": "VariableDeclaration", + "scope": 17296, + "src": "37224:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17278, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37224:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17281, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37238:2:5", + "nodeType": "VariableDeclaration", + "scope": 17296, + "src": "37233:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17280, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37233:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "37187:54:5" + }, + "returnParameters": { + "id": 17283, + "nodeType": "ParameterList", + "parameters": [], + "src": "37256:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17319, + "nodeType": "FunctionDefinition", + "src": "37367:192:5", + "body": { + "id": 17318, + "nodeType": "Block", + "src": "37451:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c626f6f6c2c6164647265737329", + "id": 17310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37501:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + "value": "log(string,string,bool,address)" + }, + { + "id": 17311, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17298, + "src": "37536:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17312, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17300, + "src": "37540:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17313, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17302, + "src": "37544:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17314, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17304, + "src": "37548:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c371c7db0a4b104babdbdf00d079eb75cb5aa1d401c4fb726c8e5559029df84d", + "typeString": "literal_string \"log(string,string,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17308, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37477:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37477:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37477:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17307, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "37461:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37461:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17317, + "nodeType": "ExpressionStatement", + "src": "37461:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37376:3:5", + "parameters": { + "id": 17305, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17298, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37394:2:5", + "nodeType": "VariableDeclaration", + "scope": 17319, + "src": "37380:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17297, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37380:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17300, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37412:2:5", + "nodeType": "VariableDeclaration", + "scope": 17319, + "src": "37398:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17299, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37398:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17302, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37421:2:5", + "nodeType": "VariableDeclaration", + "scope": 17319, + "src": "37416:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17301, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "37416:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17304, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37433:2:5", + "nodeType": "VariableDeclaration", + "scope": 17319, + "src": "37425:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17303, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37425:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "37379:57:5" + }, + "returnParameters": { + "id": 17306, + "nodeType": "ParameterList", + "parameters": [], + "src": "37451:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17342, + "nodeType": "FunctionDefinition", + "src": "37565:198:5", + "body": { + "id": 17341, + "nodeType": "Block", + "src": "37652:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c75696e7432353629", + "id": 17333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37702:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7cc3c607046f21bb2d1cc4864448de2e6c44029beb9bfc36cf6ca90777ae5a00", + "typeString": "literal_string \"log(string,string,address,uint256)\"" + }, + "value": "log(string,string,address,uint256)" + }, + { + "id": 17334, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17321, + "src": "37740:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17335, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17323, + "src": "37744:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17336, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17325, + "src": "37748:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17337, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17327, + "src": "37752:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7cc3c607046f21bb2d1cc4864448de2e6c44029beb9bfc36cf6ca90777ae5a00", + "typeString": "literal_string \"log(string,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37678:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37678:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17338, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37678:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17330, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "37662:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37662:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17340, + "nodeType": "ExpressionStatement", + "src": "37662:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37574:3:5", + "parameters": { + "id": 17328, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17321, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37592:2:5", + "nodeType": "VariableDeclaration", + "scope": 17342, + "src": "37578:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17320, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37578:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17323, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37610:2:5", + "nodeType": "VariableDeclaration", + "scope": 17342, + "src": "37596:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17322, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37596:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17325, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37622:2:5", + "nodeType": "VariableDeclaration", + "scope": 17342, + "src": "37614:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17324, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37614:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17327, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37634:2:5", + "nodeType": "VariableDeclaration", + "scope": 17342, + "src": "37626:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17326, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "37626:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "37577:60:5" + }, + "returnParameters": { + "id": 17329, + "nodeType": "ParameterList", + "parameters": [], + "src": "37652:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17365, + "nodeType": "FunctionDefinition", + "src": "37769:203:5", + "body": { + "id": 17364, + "nodeType": "Block", + "src": "37862:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c737472696e6729", + "id": 17356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "37912:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + "value": "log(string,string,address,string)" + }, + { + "id": 17357, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17344, + "src": "37949:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17358, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17346, + "src": "37953:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17359, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17348, + "src": "37957:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17360, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17350, + "src": "37961:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_eb1bff805ef136c60bfed230c7b932a14c6f7a62608edeaf56f8f2c0575d25b6", + "typeString": "literal_string \"log(string,string,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17354, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "37888:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "37888:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37888:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17353, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "37872:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "37872:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17363, + "nodeType": "ExpressionStatement", + "src": "37872:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37778:3:5", + "parameters": { + "id": 17351, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17344, + "mutability": "mutable", + "name": "p0", + "nameLocation": "37796:2:5", + "nodeType": "VariableDeclaration", + "scope": 17365, + "src": "37782:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17343, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37782:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17346, + "mutability": "mutable", + "name": "p1", + "nameLocation": "37814:2:5", + "nodeType": "VariableDeclaration", + "scope": 17365, + "src": "37800:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17345, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37800:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17348, + "mutability": "mutable", + "name": "p2", + "nameLocation": "37826:2:5", + "nodeType": "VariableDeclaration", + "scope": 17365, + "src": "37818:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17347, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "37818:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17350, + "mutability": "mutable", + "name": "p3", + "nameLocation": "37844:2:5", + "nodeType": "VariableDeclaration", + "scope": 17365, + "src": "37830:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17349, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37830:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "37781:66:5" + }, + "returnParameters": { + "id": 17352, + "nodeType": "ParameterList", + "parameters": [], + "src": "37862:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17388, + "nodeType": "FunctionDefinition", + "src": "37978:192:5", + "body": { + "id": 17387, + "nodeType": "Block", + "src": "38062:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c626f6f6c29", + "id": 17379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38112:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + "value": "log(string,string,address,bool)" + }, + { + "id": 17380, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17367, + "src": "38147:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17381, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17369, + "src": "38151:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17382, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17371, + "src": "38155:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17383, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17373, + "src": "38159:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5ccd4e373eb6ae26626c8607ae861c55cda5fd321363edde7e6328e09072ba63", + "typeString": "literal_string \"log(string,string,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17377, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38088:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38088:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38088:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17376, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "38072:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38072:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17386, + "nodeType": "ExpressionStatement", + "src": "38072:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "37987:3:5", + "parameters": { + "id": 17374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17367, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38005:2:5", + "nodeType": "VariableDeclaration", + "scope": 17388, + "src": "37991:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17366, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "37991:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17369, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38023:2:5", + "nodeType": "VariableDeclaration", + "scope": 17388, + "src": "38009:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17368, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38009:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17371, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38035:2:5", + "nodeType": "VariableDeclaration", + "scope": 17388, + "src": "38027:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17370, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38027:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17373, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38044:2:5", + "nodeType": "VariableDeclaration", + "scope": 17388, + "src": "38039:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17372, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38039:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "37990:57:5" + }, + "returnParameters": { + "id": 17375, + "nodeType": "ParameterList", + "parameters": [], + "src": "38062:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17411, + "nodeType": "FunctionDefinition", + "src": "38176:198:5", + "body": { + "id": 17410, + "nodeType": "Block", + "src": "38263:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c737472696e672c616464726573732c6164647265737329", + "id": 17402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38313:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + "value": "log(string,string,address,address)" + }, + { + "id": 17403, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17390, + "src": "38351:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17404, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17392, + "src": "38355:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17405, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17394, + "src": "38359:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17406, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17396, + "src": "38363:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_439c7befd1b6bfcb9bd001c1f3a991ef43c070f0ace0c190dd9f16d7ae338a5d", + "typeString": "literal_string \"log(string,string,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17400, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38289:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17401, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38289:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38289:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17399, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "38273:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38273:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17409, + "nodeType": "ExpressionStatement", + "src": "38273:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38185:3:5", + "parameters": { + "id": 17397, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17390, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38203:2:5", + "nodeType": "VariableDeclaration", + "scope": 17411, + "src": "38189:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17389, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38189:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17392, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38221:2:5", + "nodeType": "VariableDeclaration", + "scope": 17411, + "src": "38207:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17391, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38207:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17394, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38233:2:5", + "nodeType": "VariableDeclaration", + "scope": 17411, + "src": "38225:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17393, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38225:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17396, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38245:2:5", + "nodeType": "VariableDeclaration", + "scope": 17411, + "src": "38237:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17395, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "38237:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38188:60:5" + }, + "returnParameters": { + "id": 17398, + "nodeType": "ParameterList", + "parameters": [], + "src": "38263:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17434, + "nodeType": "FunctionDefinition", + "src": "38380:187:5", + "body": { + "id": 17433, + "nodeType": "Block", + "src": "38458:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c75696e7432353629", + "id": 17425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38508:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_64b5bb671d0911515c2d999ed3f7f689c3b5762a99b342dfee4a1d88fec7b25e", + "typeString": "literal_string \"log(string,bool,uint256,uint256)\"" + }, + "value": "log(string,bool,uint256,uint256)" + }, + { + "id": 17426, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17413, + "src": "38544:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17427, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17415, + "src": "38548:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17428, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17417, + "src": "38552:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17429, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17419, + "src": "38556:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_64b5bb671d0911515c2d999ed3f7f689c3b5762a99b342dfee4a1d88fec7b25e", + "typeString": "literal_string \"log(string,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17423, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38484:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17424, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38484:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38484:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17422, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "38468:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38468:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17432, + "nodeType": "ExpressionStatement", + "src": "38468:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38389:3:5", + "parameters": { + "id": 17420, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17413, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38407:2:5", + "nodeType": "VariableDeclaration", + "scope": 17434, + "src": "38393:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17412, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38393:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17415, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38416:2:5", + "nodeType": "VariableDeclaration", + "scope": 17434, + "src": "38411:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17414, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38411:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17417, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38428:2:5", + "nodeType": "VariableDeclaration", + "scope": 17434, + "src": "38420:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17416, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38420:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17419, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38440:2:5", + "nodeType": "VariableDeclaration", + "scope": 17434, + "src": "38432:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17418, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38432:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "38392:51:5" + }, + "returnParameters": { + "id": 17421, + "nodeType": "ParameterList", + "parameters": [], + "src": "38458:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17457, + "nodeType": "FunctionDefinition", + "src": "38573:192:5", + "body": { + "id": 17456, + "nodeType": "Block", + "src": "38657:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c737472696e6729", + "id": 17448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38707:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_742d6ee771df9df1dec5a8b70ff5f7f41567f6ae9fe27e7e391b2811f9978b00", + "typeString": "literal_string \"log(string,bool,uint256,string)\"" + }, + "value": "log(string,bool,uint256,string)" + }, + { + "id": 17449, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17436, + "src": "38742:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17450, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17438, + "src": "38746:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17451, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17440, + "src": "38750:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17452, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17442, + "src": "38754:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_742d6ee771df9df1dec5a8b70ff5f7f41567f6ae9fe27e7e391b2811f9978b00", + "typeString": "literal_string \"log(string,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17446, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38683:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17447, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38683:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38683:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17445, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "38667:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38667:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17455, + "nodeType": "ExpressionStatement", + "src": "38667:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38582:3:5", + "parameters": { + "id": 17443, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17436, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38600:2:5", + "nodeType": "VariableDeclaration", + "scope": 17457, + "src": "38586:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17435, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38586:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17438, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38609:2:5", + "nodeType": "VariableDeclaration", + "scope": 17457, + "src": "38604:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17437, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38604:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17440, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38621:2:5", + "nodeType": "VariableDeclaration", + "scope": 17457, + "src": "38613:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17439, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38613:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17442, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38639:2:5", + "nodeType": "VariableDeclaration", + "scope": 17457, + "src": "38625:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17441, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38625:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "38585:57:5" + }, + "returnParameters": { + "id": 17444, + "nodeType": "ParameterList", + "parameters": [], + "src": "38657:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17480, + "nodeType": "FunctionDefinition", + "src": "38771:181:5", + "body": { + "id": 17479, + "nodeType": "Block", + "src": "38846:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c626f6f6c29", + "id": 17471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "38896:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8af7cf8a379b674b00a81c3841f4203ce23fde0db10f1f8c2a0017ca424d79e2", + "typeString": "literal_string \"log(string,bool,uint256,bool)\"" + }, + "value": "log(string,bool,uint256,bool)" + }, + { + "id": 17472, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17459, + "src": "38929:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17473, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17461, + "src": "38933:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17474, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17463, + "src": "38937:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17475, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17465, + "src": "38941:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8af7cf8a379b674b00a81c3841f4203ce23fde0db10f1f8c2a0017ca424d79e2", + "typeString": "literal_string \"log(string,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17469, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "38872:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17470, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "38872:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38872:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17468, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "38856:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "38856:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17478, + "nodeType": "ExpressionStatement", + "src": "38856:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38780:3:5", + "parameters": { + "id": 17466, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17459, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38798:2:5", + "nodeType": "VariableDeclaration", + "scope": 17480, + "src": "38784:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17458, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38784:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17461, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38807:2:5", + "nodeType": "VariableDeclaration", + "scope": 17480, + "src": "38802:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17460, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38802:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17463, + "mutability": "mutable", + "name": "p2", + "nameLocation": "38819:2:5", + "nodeType": "VariableDeclaration", + "scope": 17480, + "src": "38811:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17462, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38811:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17465, + "mutability": "mutable", + "name": "p3", + "nameLocation": "38828:2:5", + "nodeType": "VariableDeclaration", + "scope": 17480, + "src": "38823:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38823:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "38783:48:5" + }, + "returnParameters": { + "id": 17467, + "nodeType": "ParameterList", + "parameters": [], + "src": "38846:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17503, + "nodeType": "FunctionDefinition", + "src": "38958:187:5", + "body": { + "id": 17502, + "nodeType": "Block", + "src": "39036:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c75696e743235362c6164647265737329", + "id": 17494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39086:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_935e09bfd29779a7e049f17e6e907bb9f7181e93c0c486cf646b7471eb4a9d1e", + "typeString": "literal_string \"log(string,bool,uint256,address)\"" + }, + "value": "log(string,bool,uint256,address)" + }, + { + "id": 17495, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17482, + "src": "39122:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17496, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17484, + "src": "39126:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17497, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17486, + "src": "39130:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17498, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17488, + "src": "39134:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_935e09bfd29779a7e049f17e6e907bb9f7181e93c0c486cf646b7471eb4a9d1e", + "typeString": "literal_string \"log(string,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17492, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39062:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17493, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39062:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17499, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39062:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17491, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "39046:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39046:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17501, + "nodeType": "ExpressionStatement", + "src": "39046:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "38967:3:5", + "parameters": { + "id": 17489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17482, + "mutability": "mutable", + "name": "p0", + "nameLocation": "38985:2:5", + "nodeType": "VariableDeclaration", + "scope": 17503, + "src": "38971:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17481, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "38971:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17484, + "mutability": "mutable", + "name": "p1", + "nameLocation": "38994:2:5", + "nodeType": "VariableDeclaration", + "scope": 17503, + "src": "38989:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17483, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "38989:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17486, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39006:2:5", + "nodeType": "VariableDeclaration", + "scope": 17503, + "src": "38998:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17485, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "38998:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17488, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39018:2:5", + "nodeType": "VariableDeclaration", + "scope": 17503, + "src": "39010:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17487, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39010:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "38970:51:5" + }, + "returnParameters": { + "id": 17490, + "nodeType": "ParameterList", + "parameters": [], + "src": "39036:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17526, + "nodeType": "FunctionDefinition", + "src": "39151:192:5", + "body": { + "id": 17525, + "nodeType": "Block", + "src": "39235:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c75696e7432353629", + "id": 17517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39285:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_24f9146562ee02c43db65ac014241fab3a51c9e29435f60d2ed133a186cac03a", + "typeString": "literal_string \"log(string,bool,string,uint256)\"" + }, + "value": "log(string,bool,string,uint256)" + }, + { + "id": 17518, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17505, + "src": "39320:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17519, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17507, + "src": "39324:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17520, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17509, + "src": "39328:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17521, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17511, + "src": "39332:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_24f9146562ee02c43db65ac014241fab3a51c9e29435f60d2ed133a186cac03a", + "typeString": "literal_string \"log(string,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17515, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39261:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17516, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39261:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39261:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17514, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "39245:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39245:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17524, + "nodeType": "ExpressionStatement", + "src": "39245:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39160:3:5", + "parameters": { + "id": 17512, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17505, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39178:2:5", + "nodeType": "VariableDeclaration", + "scope": 17526, + "src": "39164:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39164:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17507, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39187:2:5", + "nodeType": "VariableDeclaration", + "scope": 17526, + "src": "39182:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17506, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39182:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17509, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39205:2:5", + "nodeType": "VariableDeclaration", + "scope": 17526, + "src": "39191:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17508, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39191:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17511, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39217:2:5", + "nodeType": "VariableDeclaration", + "scope": 17526, + "src": "39209:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17510, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "39209:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39163:57:5" + }, + "returnParameters": { + "id": 17513, + "nodeType": "ParameterList", + "parameters": [], + "src": "39235:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17549, + "nodeType": "FunctionDefinition", + "src": "39349:197:5", + "body": { + "id": 17548, + "nodeType": "Block", + "src": "39439:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c737472696e6729", + "id": 17540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39489:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + "value": "log(string,bool,string,string)" + }, + { + "id": 17541, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17528, + "src": "39523:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17542, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17530, + "src": "39527:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17543, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17532, + "src": "39531:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17544, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17534, + "src": "39535:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a826caebc65f4a71211c1c7fd8dc9bdd856d7ef7dbeef42d8af156e9f73bc47d", + "typeString": "literal_string \"log(string,bool,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17538, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39465:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39465:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39465:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17537, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "39449:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39449:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17547, + "nodeType": "ExpressionStatement", + "src": "39449:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39358:3:5", + "parameters": { + "id": 17535, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17528, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39376:2:5", + "nodeType": "VariableDeclaration", + "scope": 17549, + "src": "39362:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17527, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39362:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17530, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39385:2:5", + "nodeType": "VariableDeclaration", + "scope": 17549, + "src": "39380:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17529, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39380:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17532, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39403:2:5", + "nodeType": "VariableDeclaration", + "scope": 17549, + "src": "39389:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17531, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39389:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17534, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39421:2:5", + "nodeType": "VariableDeclaration", + "scope": 17549, + "src": "39407:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17533, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39407:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "39361:63:5" + }, + "returnParameters": { + "id": 17536, + "nodeType": "ParameterList", + "parameters": [], + "src": "39439:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17572, + "nodeType": "FunctionDefinition", + "src": "39552:186:5", + "body": { + "id": 17571, + "nodeType": "Block", + "src": "39633:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c626f6f6c29", + "id": 17563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39683:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + "value": "log(string,bool,string,bool)" + }, + { + "id": 17564, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17551, + "src": "39715:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17565, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17553, + "src": "39719:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17566, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17555, + "src": "39723:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17567, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17557, + "src": "39727:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3f8a701d00386d6ad9c7b7a930805b985bcbbe108e894a7d5cb9493e87e57e8b", + "typeString": "literal_string \"log(string,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17561, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39659:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39659:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39659:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17560, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "39643:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39643:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17570, + "nodeType": "ExpressionStatement", + "src": "39643:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39561:3:5", + "parameters": { + "id": 17558, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17551, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39579:2:5", + "nodeType": "VariableDeclaration", + "scope": 17572, + "src": "39565:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17550, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39565:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17553, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39588:2:5", + "nodeType": "VariableDeclaration", + "scope": 17572, + "src": "39583:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17552, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39583:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17555, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39606:2:5", + "nodeType": "VariableDeclaration", + "scope": 17572, + "src": "39592:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17554, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39592:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17557, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39615:2:5", + "nodeType": "VariableDeclaration", + "scope": 17572, + "src": "39610:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17556, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39610:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "39564:54:5" + }, + "returnParameters": { + "id": 17559, + "nodeType": "ParameterList", + "parameters": [], + "src": "39633:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17595, + "nodeType": "FunctionDefinition", + "src": "39744:192:5", + "body": { + "id": 17594, + "nodeType": "Block", + "src": "39828:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c737472696e672c6164647265737329", + "id": 17586, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "39878:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + "value": "log(string,bool,string,address)" + }, + { + "id": 17587, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17574, + "src": "39913:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17588, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17576, + "src": "39917:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17589, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17578, + "src": "39921:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17590, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17580, + "src": "39925:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e0625b292fa5cbc865b55f61713cbbe0ce7abb244ec2df45291ea19c30ddfaf8", + "typeString": "literal_string \"log(string,bool,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17584, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "39854:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17585, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "39854:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39854:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17583, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "39838:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "39838:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17593, + "nodeType": "ExpressionStatement", + "src": "39838:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39753:3:5", + "parameters": { + "id": 17581, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17574, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39771:2:5", + "nodeType": "VariableDeclaration", + "scope": 17595, + "src": "39757:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17573, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39757:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17576, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39780:2:5", + "nodeType": "VariableDeclaration", + "scope": 17595, + "src": "39775:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17575, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39775:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17578, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39798:2:5", + "nodeType": "VariableDeclaration", + "scope": 17595, + "src": "39784:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17577, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39784:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17580, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39810:2:5", + "nodeType": "VariableDeclaration", + "scope": 17595, + "src": "39802:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17579, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "39802:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "39756:57:5" + }, + "returnParameters": { + "id": 17582, + "nodeType": "ParameterList", + "parameters": [], + "src": "39828:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17618, + "nodeType": "FunctionDefinition", + "src": "39942:181:5", + "body": { + "id": 17617, + "nodeType": "Block", + "src": "40017:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 17609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40067:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e3f78a95b6137f6ae9ccc69d6fedacb3b283b432b4367bfc497a4b3b428665c", + "typeString": "literal_string \"log(string,bool,bool,uint256)\"" + }, + "value": "log(string,bool,bool,uint256)" + }, + { + "id": 17610, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17597, + "src": "40100:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17611, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17599, + "src": "40104:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17612, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17601, + "src": "40108:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17613, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17603, + "src": "40112:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e3f78a95b6137f6ae9ccc69d6fedacb3b283b432b4367bfc497a4b3b428665c", + "typeString": "literal_string \"log(string,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17607, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40043:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40043:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40043:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17606, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40027:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40027:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17616, + "nodeType": "ExpressionStatement", + "src": "40027:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "39951:3:5", + "parameters": { + "id": 17604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17597, + "mutability": "mutable", + "name": "p0", + "nameLocation": "39969:2:5", + "nodeType": "VariableDeclaration", + "scope": 17618, + "src": "39955:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17596, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "39955:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17599, + "mutability": "mutable", + "name": "p1", + "nameLocation": "39978:2:5", + "nodeType": "VariableDeclaration", + "scope": 17618, + "src": "39973:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17598, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39973:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17601, + "mutability": "mutable", + "name": "p2", + "nameLocation": "39987:2:5", + "nodeType": "VariableDeclaration", + "scope": 17618, + "src": "39982:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17600, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "39982:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17603, + "mutability": "mutable", + "name": "p3", + "nameLocation": "39999:2:5", + "nodeType": "VariableDeclaration", + "scope": 17618, + "src": "39991:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "39991:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "39954:48:5" + }, + "returnParameters": { + "id": 17605, + "nodeType": "ParameterList", + "parameters": [], + "src": "40017:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17641, + "nodeType": "FunctionDefinition", + "src": "40129:186:5", + "body": { + "id": 17640, + "nodeType": "Block", + "src": "40210:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c737472696e6729", + "id": 17632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40260:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + "value": "log(string,bool,bool,string)" + }, + { + "id": 17633, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17620, + "src": "40292:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17634, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17622, + "src": "40296:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17635, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17624, + "src": "40300:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17636, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17626, + "src": "40304:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9d22d5dd5fa6b44920526f32944af8a0b12651bcfe7d5e4d9330573146eaf058", + "typeString": "literal_string \"log(string,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17630, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40236:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40236:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17637, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40236:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17629, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40220:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40220:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17639, + "nodeType": "ExpressionStatement", + "src": "40220:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40138:3:5", + "parameters": { + "id": 17627, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17620, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40156:2:5", + "nodeType": "VariableDeclaration", + "scope": 17641, + "src": "40142:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17619, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40142:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17622, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40165:2:5", + "nodeType": "VariableDeclaration", + "scope": 17641, + "src": "40160:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17621, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40160:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17624, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40174:2:5", + "nodeType": "VariableDeclaration", + "scope": 17641, + "src": "40169:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17623, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40169:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17626, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40192:2:5", + "nodeType": "VariableDeclaration", + "scope": 17641, + "src": "40178:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17625, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40178:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "40141:54:5" + }, + "returnParameters": { + "id": 17628, + "nodeType": "ParameterList", + "parameters": [], + "src": "40210:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17664, + "nodeType": "FunctionDefinition", + "src": "40321:175:5", + "body": { + "id": 17663, + "nodeType": "Block", + "src": "40393:103:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 17655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40443:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + "value": "log(string,bool,bool,bool)" + }, + { + "id": 17656, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17643, + "src": "40473:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17657, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17645, + "src": "40477:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17658, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17647, + "src": "40481:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17659, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17649, + "src": "40485:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_895af8c5b50078ceec3119054e20583155eeb3e1a8f56b8ed56efbec57456ad2", + "typeString": "literal_string \"log(string,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40419:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40419:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40419:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17652, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40403:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40403:86:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17662, + "nodeType": "ExpressionStatement", + "src": "40403:86:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40330:3:5", + "parameters": { + "id": 17650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17643, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40348:2:5", + "nodeType": "VariableDeclaration", + "scope": 17664, + "src": "40334:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17642, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40334:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17645, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40357:2:5", + "nodeType": "VariableDeclaration", + "scope": 17664, + "src": "40352:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17644, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40352:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17647, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40366:2:5", + "nodeType": "VariableDeclaration", + "scope": 17664, + "src": "40361:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17646, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40361:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17649, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40375:2:5", + "nodeType": "VariableDeclaration", + "scope": 17664, + "src": "40370:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17648, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40370:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "40333:45:5" + }, + "returnParameters": { + "id": 17651, + "nodeType": "ParameterList", + "parameters": [], + "src": "40393:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17687, + "nodeType": "FunctionDefinition", + "src": "40502:181:5", + "body": { + "id": 17686, + "nodeType": "Block", + "src": "40577:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c626f6f6c2c6164647265737329", + "id": 17678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40627:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + "value": "log(string,bool,bool,address)" + }, + { + "id": 17679, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17666, + "src": "40660:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17680, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17668, + "src": "40664:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17681, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17670, + "src": "40668:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17682, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17672, + "src": "40672:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7190a529624f3e9168945b9053b9648f6439313f31cad0801b50f9dc38a45d4d", + "typeString": "literal_string \"log(string,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17676, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40603:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17677, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40603:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40603:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17675, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40587:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40587:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17685, + "nodeType": "ExpressionStatement", + "src": "40587:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40511:3:5", + "parameters": { + "id": 17673, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17666, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40529:2:5", + "nodeType": "VariableDeclaration", + "scope": 17687, + "src": "40515:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17665, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40515:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17668, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40538:2:5", + "nodeType": "VariableDeclaration", + "scope": 17687, + "src": "40533:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17667, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40533:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17670, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40547:2:5", + "nodeType": "VariableDeclaration", + "scope": 17687, + "src": "40542:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17669, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40542:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17672, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40559:2:5", + "nodeType": "VariableDeclaration", + "scope": 17687, + "src": "40551:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17671, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40551:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "40514:48:5" + }, + "returnParameters": { + "id": 17674, + "nodeType": "ParameterList", + "parameters": [], + "src": "40577:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17710, + "nodeType": "FunctionDefinition", + "src": "40689:187:5", + "body": { + "id": 17709, + "nodeType": "Block", + "src": "40767:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c75696e7432353629", + "id": 17701, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "40817:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d08bb051545e1af26b8dc05172e6aa8a0bd85212ec19e971b10cea364c21531", + "typeString": "literal_string \"log(string,bool,address,uint256)\"" + }, + "value": "log(string,bool,address,uint256)" + }, + { + "id": 17702, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17689, + "src": "40853:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17703, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17691, + "src": "40857:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17704, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17693, + "src": "40861:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17705, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17695, + "src": "40865:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d08bb051545e1af26b8dc05172e6aa8a0bd85212ec19e971b10cea364c21531", + "typeString": "literal_string \"log(string,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17699, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40793:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17700, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40793:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40793:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17698, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40777:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40777:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17708, + "nodeType": "ExpressionStatement", + "src": "40777:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40698:3:5", + "parameters": { + "id": 17696, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17689, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40716:2:5", + "nodeType": "VariableDeclaration", + "scope": 17710, + "src": "40702:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17688, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40702:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17691, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40725:2:5", + "nodeType": "VariableDeclaration", + "scope": 17710, + "src": "40720:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17690, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40720:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17693, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40737:2:5", + "nodeType": "VariableDeclaration", + "scope": 17710, + "src": "40729:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17692, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40729:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17695, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40749:2:5", + "nodeType": "VariableDeclaration", + "scope": 17710, + "src": "40741:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17694, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "40741:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "40701:51:5" + }, + "returnParameters": { + "id": 17697, + "nodeType": "ParameterList", + "parameters": [], + "src": "40767:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17733, + "nodeType": "FunctionDefinition", + "src": "40882:192:5", + "body": { + "id": 17732, + "nodeType": "Block", + "src": "40966:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c737472696e6729", + "id": 17724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41016:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + "value": "log(string,bool,address,string)" + }, + { + "id": 17725, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17712, + "src": "41051:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17726, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17714, + "src": "41055:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17727, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17716, + "src": "41059:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17728, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17718, + "src": "41063:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2d8e33a4e52268aad313274a8446eec6f40466a28da2456a8f12d83b298c13ef", + "typeString": "literal_string \"log(string,bool,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17722, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "40992:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17723, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "40992:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40992:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17721, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "40976:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "40976:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17731, + "nodeType": "ExpressionStatement", + "src": "40976:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "40891:3:5", + "parameters": { + "id": 17719, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17712, + "mutability": "mutable", + "name": "p0", + "nameLocation": "40909:2:5", + "nodeType": "VariableDeclaration", + "scope": 17733, + "src": "40895:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17711, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40895:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17714, + "mutability": "mutable", + "name": "p1", + "nameLocation": "40918:2:5", + "nodeType": "VariableDeclaration", + "scope": 17733, + "src": "40913:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17713, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "40913:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17716, + "mutability": "mutable", + "name": "p2", + "nameLocation": "40930:2:5", + "nodeType": "VariableDeclaration", + "scope": 17733, + "src": "40922:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17715, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "40922:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17718, + "mutability": "mutable", + "name": "p3", + "nameLocation": "40948:2:5", + "nodeType": "VariableDeclaration", + "scope": 17733, + "src": "40934:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17717, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "40934:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "40894:57:5" + }, + "returnParameters": { + "id": 17720, + "nodeType": "ParameterList", + "parameters": [], + "src": "40966:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17756, + "nodeType": "FunctionDefinition", + "src": "41080:181:5", + "body": { + "id": 17755, + "nodeType": "Block", + "src": "41155:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c626f6f6c29", + "id": 17747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41205:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + "value": "log(string,bool,address,bool)" + }, + { + "id": 17748, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17735, + "src": "41238:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17749, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17737, + "src": "41242:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17750, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17739, + "src": "41246:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17751, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17741, + "src": "41250:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_958c28c6e7bd79de7ce7f6f112cbcb194d9e383764dfb947492ee1374ff5c482", + "typeString": "literal_string \"log(string,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17745, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41181:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17746, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41181:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41181:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17744, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "41165:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41165:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17754, + "nodeType": "ExpressionStatement", + "src": "41165:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41089:3:5", + "parameters": { + "id": 17742, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17735, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41107:2:5", + "nodeType": "VariableDeclaration", + "scope": 17756, + "src": "41093:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17734, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41093:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17737, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41116:2:5", + "nodeType": "VariableDeclaration", + "scope": 17756, + "src": "41111:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17736, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41111:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17739, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41128:2:5", + "nodeType": "VariableDeclaration", + "scope": 17756, + "src": "41120:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17738, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41120:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17741, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41137:2:5", + "nodeType": "VariableDeclaration", + "scope": 17756, + "src": "41132:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17740, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41132:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "41092:48:5" + }, + "returnParameters": { + "id": 17743, + "nodeType": "ParameterList", + "parameters": [], + "src": "41155:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17779, + "nodeType": "FunctionDefinition", + "src": "41267:187:5", + "body": { + "id": 17778, + "nodeType": "Block", + "src": "41345:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c626f6f6c2c616464726573732c6164647265737329", + "id": 17770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41395:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + "value": "log(string,bool,address,address)" + }, + { + "id": 17771, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17758, + "src": "41431:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17772, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17760, + "src": "41435:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17773, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17762, + "src": "41439:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17774, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17764, + "src": "41443:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_33e9dd1deb33816160eb59d86987de501b214bedbbe3c70103eff4092834b53d", + "typeString": "literal_string \"log(string,bool,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17768, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41371:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17769, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41371:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41371:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17767, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "41355:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41355:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17777, + "nodeType": "ExpressionStatement", + "src": "41355:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41276:3:5", + "parameters": { + "id": 17765, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17758, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41294:2:5", + "nodeType": "VariableDeclaration", + "scope": 17779, + "src": "41280:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17757, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41280:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17760, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41303:2:5", + "nodeType": "VariableDeclaration", + "scope": 17779, + "src": "41298:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17759, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41298:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17762, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41315:2:5", + "nodeType": "VariableDeclaration", + "scope": 17779, + "src": "41307:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17761, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41307:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17764, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41327:2:5", + "nodeType": "VariableDeclaration", + "scope": 17779, + "src": "41319:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17763, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41319:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "41279:51:5" + }, + "returnParameters": { + "id": 17766, + "nodeType": "ParameterList", + "parameters": [], + "src": "41345:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17802, + "nodeType": "FunctionDefinition", + "src": "41460:193:5", + "body": { + "id": 17801, + "nodeType": "Block", + "src": "41541:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c75696e7432353629", + "id": 17793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41591:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f8f51b1efa50f24f22e6d84ce2fe784a33e1301484ada1546e913ae05d6370e9", + "typeString": "literal_string \"log(string,address,uint256,uint256)\"" + }, + "value": "log(string,address,uint256,uint256)" + }, + { + "id": 17794, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17781, + "src": "41630:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17795, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17783, + "src": "41634:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17796, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17785, + "src": "41638:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17797, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17787, + "src": "41642:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f8f51b1efa50f24f22e6d84ce2fe784a33e1301484ada1546e913ae05d6370e9", + "typeString": "literal_string \"log(string,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17791, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41567:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41567:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17798, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41567:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17790, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "41551:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41551:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17800, + "nodeType": "ExpressionStatement", + "src": "41551:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41469:3:5", + "parameters": { + "id": 17788, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17781, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41487:2:5", + "nodeType": "VariableDeclaration", + "scope": 17802, + "src": "41473:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17780, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41473:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17783, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41499:2:5", + "nodeType": "VariableDeclaration", + "scope": 17802, + "src": "41491:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17782, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41491:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17785, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41511:2:5", + "nodeType": "VariableDeclaration", + "scope": 17802, + "src": "41503:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17784, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41503:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17787, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41523:2:5", + "nodeType": "VariableDeclaration", + "scope": 17802, + "src": "41515:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17786, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41515:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "41472:54:5" + }, + "returnParameters": { + "id": 17789, + "nodeType": "ParameterList", + "parameters": [], + "src": "41541:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17825, + "nodeType": "FunctionDefinition", + "src": "41659:198:5", + "body": { + "id": 17824, + "nodeType": "Block", + "src": "41746:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c737472696e6729", + "id": 17816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41796:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5a477632ed0f8b7872a83c9247644de555db395491f2f355c6edb676d8bcb46c", + "typeString": "literal_string \"log(string,address,uint256,string)\"" + }, + "value": "log(string,address,uint256,string)" + }, + { + "id": 17817, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17804, + "src": "41834:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17818, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17806, + "src": "41838:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17819, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17808, + "src": "41842:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17820, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17810, + "src": "41846:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5a477632ed0f8b7872a83c9247644de555db395491f2f355c6edb676d8bcb46c", + "typeString": "literal_string \"log(string,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17814, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41772:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41772:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41772:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17813, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "41756:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41756:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17823, + "nodeType": "ExpressionStatement", + "src": "41756:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41668:3:5", + "parameters": { + "id": 17811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17804, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41686:2:5", + "nodeType": "VariableDeclaration", + "scope": 17825, + "src": "41672:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17803, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41672:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17806, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41698:2:5", + "nodeType": "VariableDeclaration", + "scope": 17825, + "src": "41690:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17805, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41690:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17808, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41710:2:5", + "nodeType": "VariableDeclaration", + "scope": 17825, + "src": "41702:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41702:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17810, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41728:2:5", + "nodeType": "VariableDeclaration", + "scope": 17825, + "src": "41714:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41714:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "41671:60:5" + }, + "returnParameters": { + "id": 17812, + "nodeType": "ParameterList", + "parameters": [], + "src": "41746:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17848, + "nodeType": "FunctionDefinition", + "src": "41863:187:5", + "body": { + "id": 17847, + "nodeType": "Block", + "src": "41941:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c626f6f6c29", + "id": 17839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "41991:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fc4845f029f76ed29f7b800fe92a7851214073a807806d7d808676b2cbe7a1c7", + "typeString": "literal_string \"log(string,address,uint256,bool)\"" + }, + "value": "log(string,address,uint256,bool)" + }, + { + "id": 17840, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17827, + "src": "42027:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17841, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17829, + "src": "42031:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17842, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17831, + "src": "42035:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17843, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17833, + "src": "42039:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fc4845f029f76ed29f7b800fe92a7851214073a807806d7d808676b2cbe7a1c7", + "typeString": "literal_string \"log(string,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17837, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "41967:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17838, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "41967:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17844, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41967:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17836, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "41951:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "41951:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17846, + "nodeType": "ExpressionStatement", + "src": "41951:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "41872:3:5", + "parameters": { + "id": 17834, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17827, + "mutability": "mutable", + "name": "p0", + "nameLocation": "41890:2:5", + "nodeType": "VariableDeclaration", + "scope": 17848, + "src": "41876:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17826, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "41876:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17829, + "mutability": "mutable", + "name": "p1", + "nameLocation": "41902:2:5", + "nodeType": "VariableDeclaration", + "scope": 17848, + "src": "41894:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17828, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "41894:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17831, + "mutability": "mutable", + "name": "p2", + "nameLocation": "41914:2:5", + "nodeType": "VariableDeclaration", + "scope": 17848, + "src": "41906:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "41906:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17833, + "mutability": "mutable", + "name": "p3", + "nameLocation": "41923:2:5", + "nodeType": "VariableDeclaration", + "scope": 17848, + "src": "41918:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "41918:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "41875:51:5" + }, + "returnParameters": { + "id": 17835, + "nodeType": "ParameterList", + "parameters": [], + "src": "41941:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17871, + "nodeType": "FunctionDefinition", + "src": "42056:193:5", + "body": { + "id": 17870, + "nodeType": "Block", + "src": "42137:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c75696e743235362c6164647265737329", + "id": 17862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42187:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_63fb8bc57476e3f2139504feb3fa304f43eeecc15ac8e150b7b3c9fdfa4ea83a", + "typeString": "literal_string \"log(string,address,uint256,address)\"" + }, + "value": "log(string,address,uint256,address)" + }, + { + "id": 17863, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17850, + "src": "42226:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17864, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17852, + "src": "42230:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17865, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17854, + "src": "42234:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 17866, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17856, + "src": "42238:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_63fb8bc57476e3f2139504feb3fa304f43eeecc15ac8e150b7b3c9fdfa4ea83a", + "typeString": "literal_string \"log(string,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17860, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42163:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42163:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17867, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42163:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17859, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "42147:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42147:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17869, + "nodeType": "ExpressionStatement", + "src": "42147:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42065:3:5", + "parameters": { + "id": 17857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17850, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42083:2:5", + "nodeType": "VariableDeclaration", + "scope": 17871, + "src": "42069:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17849, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42069:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17852, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42095:2:5", + "nodeType": "VariableDeclaration", + "scope": 17871, + "src": "42087:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17851, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42087:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17854, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42107:2:5", + "nodeType": "VariableDeclaration", + "scope": 17871, + "src": "42099:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17853, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "42099:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17856, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42119:2:5", + "nodeType": "VariableDeclaration", + "scope": 17871, + "src": "42111:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17855, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42111:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "42068:54:5" + }, + "returnParameters": { + "id": 17858, + "nodeType": "ParameterList", + "parameters": [], + "src": "42137:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17894, + "nodeType": "FunctionDefinition", + "src": "42255:198:5", + "body": { + "id": 17893, + "nodeType": "Block", + "src": "42342:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c75696e7432353629", + "id": 17885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42392:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91d1112e9ca774de680c78512401449500c1938a4e449f6e73f80a84d95cfcfd", + "typeString": "literal_string \"log(string,address,string,uint256)\"" + }, + "value": "log(string,address,string,uint256)" + }, + { + "id": 17886, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17873, + "src": "42430:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17887, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17875, + "src": "42434:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17888, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17877, + "src": "42438:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17889, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17879, + "src": "42442:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91d1112e9ca774de680c78512401449500c1938a4e449f6e73f80a84d95cfcfd", + "typeString": "literal_string \"log(string,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17883, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42368:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42368:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17890, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42368:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17882, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "42352:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42352:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17892, + "nodeType": "ExpressionStatement", + "src": "42352:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42264:3:5", + "parameters": { + "id": 17880, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17873, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42282:2:5", + "nodeType": "VariableDeclaration", + "scope": 17894, + "src": "42268:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17872, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42268:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17875, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42294:2:5", + "nodeType": "VariableDeclaration", + "scope": 17894, + "src": "42286:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17874, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42286:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17877, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42312:2:5", + "nodeType": "VariableDeclaration", + "scope": 17894, + "src": "42298:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17876, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42298:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17879, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42324:2:5", + "nodeType": "VariableDeclaration", + "scope": 17894, + "src": "42316:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17878, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "42316:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "42267:60:5" + }, + "returnParameters": { + "id": 17881, + "nodeType": "ParameterList", + "parameters": [], + "src": "42342:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17917, + "nodeType": "FunctionDefinition", + "src": "42459:203:5", + "body": { + "id": 17916, + "nodeType": "Block", + "src": "42552:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c737472696e6729", + "id": 17908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42602:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + "value": "log(string,address,string,string)" + }, + { + "id": 17909, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17896, + "src": "42639:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17910, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17898, + "src": "42643:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17911, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17900, + "src": "42647:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17912, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17902, + "src": "42651:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_245986f22170901865e76245a48ee28ce0127ca357f6ad576a72190e1d358797", + "typeString": "literal_string \"log(string,address,string,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17906, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42578:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17907, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42578:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42578:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17905, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "42562:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42562:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17915, + "nodeType": "ExpressionStatement", + "src": "42562:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42468:3:5", + "parameters": { + "id": 17903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17896, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42486:2:5", + "nodeType": "VariableDeclaration", + "scope": 17917, + "src": "42472:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42472:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17898, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42498:2:5", + "nodeType": "VariableDeclaration", + "scope": 17917, + "src": "42490:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17897, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42490:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17900, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42516:2:5", + "nodeType": "VariableDeclaration", + "scope": 17917, + "src": "42502:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17899, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42502:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17902, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42534:2:5", + "nodeType": "VariableDeclaration", + "scope": 17917, + "src": "42520:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17901, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42520:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "42471:66:5" + }, + "returnParameters": { + "id": 17904, + "nodeType": "ParameterList", + "parameters": [], + "src": "42552:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17940, + "nodeType": "FunctionDefinition", + "src": "42668:192:5", + "body": { + "id": 17939, + "nodeType": "Block", + "src": "42752:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c626f6f6c29", + "id": 17931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "42802:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + "value": "log(string,address,string,bool)" + }, + { + "id": 17932, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17919, + "src": "42837:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17933, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17921, + "src": "42841:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17934, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17923, + "src": "42845:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17935, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17925, + "src": "42849:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f15d28c15ddff15fba1c00f6a4975ae6af8b36c9b2a875bf59bd45049046154", + "typeString": "literal_string \"log(string,address,string,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 17929, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42778:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17930, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42778:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42778:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17928, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "42762:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42762:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17938, + "nodeType": "ExpressionStatement", + "src": "42762:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42677:3:5", + "parameters": { + "id": 17926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17919, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42695:2:5", + "nodeType": "VariableDeclaration", + "scope": 17940, + "src": "42681:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17918, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42681:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17921, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42707:2:5", + "nodeType": "VariableDeclaration", + "scope": 17940, + "src": "42699:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42699:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17923, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42725:2:5", + "nodeType": "VariableDeclaration", + "scope": 17940, + "src": "42711:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17922, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42711:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17925, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42734:2:5", + "nodeType": "VariableDeclaration", + "scope": 17940, + "src": "42729:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17924, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "42729:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "42680:57:5" + }, + "returnParameters": { + "id": 17927, + "nodeType": "ParameterList", + "parameters": [], + "src": "42752:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17963, + "nodeType": "FunctionDefinition", + "src": "42866:198:5", + "body": { + "id": 17962, + "nodeType": "Block", + "src": "42953:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c737472696e672c6164647265737329", + "id": 17954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43003:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + "value": "log(string,address,string,address)" + }, + { + "id": 17955, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17942, + "src": "43041:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17956, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17944, + "src": "43045:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17957, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17946, + "src": "43049:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17958, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17948, + "src": "43053:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aabc9a311ab49789834b120d81155a7fee846a9f0d4f740bbeb970770190c82d", + "typeString": "literal_string \"log(string,address,string,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 17952, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "42979:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "42979:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17959, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42979:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17951, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "42963:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "42963:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17961, + "nodeType": "ExpressionStatement", + "src": "42963:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "42875:3:5", + "parameters": { + "id": 17949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17942, + "mutability": "mutable", + "name": "p0", + "nameLocation": "42893:2:5", + "nodeType": "VariableDeclaration", + "scope": 17963, + "src": "42879:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17941, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42879:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17944, + "mutability": "mutable", + "name": "p1", + "nameLocation": "42905:2:5", + "nodeType": "VariableDeclaration", + "scope": 17963, + "src": "42897:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17943, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42897:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17946, + "mutability": "mutable", + "name": "p2", + "nameLocation": "42923:2:5", + "nodeType": "VariableDeclaration", + "scope": 17963, + "src": "42909:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17945, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "42909:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17948, + "mutability": "mutable", + "name": "p3", + "nameLocation": "42935:2:5", + "nodeType": "VariableDeclaration", + "scope": 17963, + "src": "42927:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "42927:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "42878:60:5" + }, + "returnParameters": { + "id": 17950, + "nodeType": "ParameterList", + "parameters": [], + "src": "42953:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 17986, + "nodeType": "FunctionDefinition", + "src": "43070:187:5", + "body": { + "id": 17985, + "nodeType": "Block", + "src": "43148:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c75696e7432353629", + "id": 17977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43198:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3e9f866aadef9b1f2b0257e0ed5e2df8882ba55e598b4f5282674b64ae3f06b5", + "typeString": "literal_string \"log(string,address,bool,uint256)\"" + }, + "value": "log(string,address,bool,uint256)" + }, + { + "id": 17978, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17965, + "src": "43234:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 17979, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17967, + "src": "43238:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 17980, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17969, + "src": "43242:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 17981, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17971, + "src": "43246:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3e9f866aadef9b1f2b0257e0ed5e2df8882ba55e598b4f5282674b64ae3f06b5", + "typeString": "literal_string \"log(string,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 17975, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43174:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43174:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 17982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43174:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17974, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "43158:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 17983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43158:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 17984, + "nodeType": "ExpressionStatement", + "src": "43158:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43079:3:5", + "parameters": { + "id": 17972, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17965, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43097:2:5", + "nodeType": "VariableDeclaration", + "scope": 17986, + "src": "43083:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17964, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43083:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17967, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43109:2:5", + "nodeType": "VariableDeclaration", + "scope": 17986, + "src": "43101:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17966, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43101:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17969, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43118:2:5", + "nodeType": "VariableDeclaration", + "scope": 17986, + "src": "43113:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17968, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43113:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17971, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43130:2:5", + "nodeType": "VariableDeclaration", + "scope": 17986, + "src": "43122:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 17970, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "43122:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "43082:51:5" + }, + "returnParameters": { + "id": 17973, + "nodeType": "ParameterList", + "parameters": [], + "src": "43148:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18009, + "nodeType": "FunctionDefinition", + "src": "43263:192:5", + "body": { + "id": 18008, + "nodeType": "Block", + "src": "43347:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c737472696e6729", + "id": 18000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43397:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + "value": "log(string,address,bool,string)" + }, + { + "id": 18001, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17988, + "src": "43432:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18002, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17990, + "src": "43436:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18003, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17992, + "src": "43440:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18004, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 17994, + "src": "43444:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0454c0793d4a41e5f630eb9a887926f8a67ff9e817a5feb968698354ac9d22fb", + "typeString": "literal_string \"log(string,address,bool,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 17998, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43373:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 17999, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43373:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43373:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 17997, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "43357:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43357:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18007, + "nodeType": "ExpressionStatement", + "src": "43357:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43272:3:5", + "parameters": { + "id": 17995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 17988, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43290:2:5", + "nodeType": "VariableDeclaration", + "scope": 18009, + "src": "43276:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17987, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43276:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17990, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43302:2:5", + "nodeType": "VariableDeclaration", + "scope": 18009, + "src": "43294:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 17989, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43294:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17992, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43311:2:5", + "nodeType": "VariableDeclaration", + "scope": 18009, + "src": "43306:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 17991, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43306:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 17994, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43329:2:5", + "nodeType": "VariableDeclaration", + "scope": 18009, + "src": "43315:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 17993, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43315:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "43275:57:5" + }, + "returnParameters": { + "id": 17996, + "nodeType": "ParameterList", + "parameters": [], + "src": "43347:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18032, + "nodeType": "FunctionDefinition", + "src": "43461:181:5", + "body": { + "id": 18031, + "nodeType": "Block", + "src": "43536:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c626f6f6c29", + "id": 18023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43586:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + "value": "log(string,address,bool,bool)" + }, + { + "id": 18024, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18011, + "src": "43619:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18025, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18013, + "src": "43623:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18026, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18015, + "src": "43627:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18027, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18017, + "src": "43631:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_79884c2bc85eb73c854df1610df373a05f191b834f79cd47a7ab28be2308c039", + "typeString": "literal_string \"log(string,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18021, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43562:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18022, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43562:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43562:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18020, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "43546:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43546:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18030, + "nodeType": "ExpressionStatement", + "src": "43546:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43470:3:5", + "parameters": { + "id": 18018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18011, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43488:2:5", + "nodeType": "VariableDeclaration", + "scope": 18032, + "src": "43474:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18010, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43474:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18013, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43500:2:5", + "nodeType": "VariableDeclaration", + "scope": 18032, + "src": "43492:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18012, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43492:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18015, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43509:2:5", + "nodeType": "VariableDeclaration", + "scope": 18032, + "src": "43504:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18014, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43504:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18017, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43518:2:5", + "nodeType": "VariableDeclaration", + "scope": 18032, + "src": "43513:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18016, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43513:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "43473:48:5" + }, + "returnParameters": { + "id": 18019, + "nodeType": "ParameterList", + "parameters": [], + "src": "43536:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18055, + "nodeType": "FunctionDefinition", + "src": "43648:187:5", + "body": { + "id": 18054, + "nodeType": "Block", + "src": "43726:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c626f6f6c2c6164647265737329", + "id": 18046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43776:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + "value": "log(string,address,bool,address)" + }, + { + "id": 18047, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18034, + "src": "43812:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18048, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18036, + "src": "43816:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18049, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18038, + "src": "43820:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18050, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18040, + "src": "43824:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_223603bd064d72559a7d519ad0f1c6a8da707a49f5718dfa23a5ccb01bf9ab76", + "typeString": "literal_string \"log(string,address,bool,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18044, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43752:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43752:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43752:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18043, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "43736:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43736:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18053, + "nodeType": "ExpressionStatement", + "src": "43736:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43657:3:5", + "parameters": { + "id": 18041, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18034, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43675:2:5", + "nodeType": "VariableDeclaration", + "scope": 18055, + "src": "43661:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18033, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43661:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18036, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43687:2:5", + "nodeType": "VariableDeclaration", + "scope": 18055, + "src": "43679:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43679:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18038, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43696:2:5", + "nodeType": "VariableDeclaration", + "scope": 18055, + "src": "43691:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18037, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "43691:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18040, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43708:2:5", + "nodeType": "VariableDeclaration", + "scope": 18055, + "src": "43700:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18039, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43700:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "43660:51:5" + }, + "returnParameters": { + "id": 18042, + "nodeType": "ParameterList", + "parameters": [], + "src": "43726:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18078, + "nodeType": "FunctionDefinition", + "src": "43841:193:5", + "body": { + "id": 18077, + "nodeType": "Block", + "src": "43922:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c75696e7432353629", + "id": 18069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "43972:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8ef3f399de1ebecd7840dee5f4cdc1bad43021ab37fa3acdd3dfbd36f7092e7b", + "typeString": "literal_string \"log(string,address,address,uint256)\"" + }, + "value": "log(string,address,address,uint256)" + }, + { + "id": 18070, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18057, + "src": "44011:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18071, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18059, + "src": "44015:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18072, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18061, + "src": "44019:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18073, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18063, + "src": "44023:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8ef3f399de1ebecd7840dee5f4cdc1bad43021ab37fa3acdd3dfbd36f7092e7b", + "typeString": "literal_string \"log(string,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18067, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "43948:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18068, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "43948:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18074, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43948:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18066, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "43932:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "43932:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18076, + "nodeType": "ExpressionStatement", + "src": "43932:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "43850:3:5", + "parameters": { + "id": 18064, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18057, + "mutability": "mutable", + "name": "p0", + "nameLocation": "43868:2:5", + "nodeType": "VariableDeclaration", + "scope": 18078, + "src": "43854:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18056, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "43854:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18059, + "mutability": "mutable", + "name": "p1", + "nameLocation": "43880:2:5", + "nodeType": "VariableDeclaration", + "scope": 18078, + "src": "43872:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18058, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43872:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18061, + "mutability": "mutable", + "name": "p2", + "nameLocation": "43892:2:5", + "nodeType": "VariableDeclaration", + "scope": 18078, + "src": "43884:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18060, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "43884:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18063, + "mutability": "mutable", + "name": "p3", + "nameLocation": "43904:2:5", + "nodeType": "VariableDeclaration", + "scope": 18078, + "src": "43896:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18062, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "43896:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "43853:54:5" + }, + "returnParameters": { + "id": 18065, + "nodeType": "ParameterList", + "parameters": [], + "src": "43922:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18101, + "nodeType": "FunctionDefinition", + "src": "44040:198:5", + "body": { + "id": 18100, + "nodeType": "Block", + "src": "44127:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c737472696e6729", + "id": 18092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44177:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + "value": "log(string,address,address,string)" + }, + { + "id": 18093, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18080, + "src": "44215:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18094, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18082, + "src": "44219:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18095, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18084, + "src": "44223:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18096, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18086, + "src": "44227:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_800a1c6756a402b6162ca8653fd8e87e2c52d1c019c876e92eb2980479636a76", + "typeString": "literal_string \"log(string,address,address,string)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18090, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44153:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18091, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44153:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44153:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18089, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "44137:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44137:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18099, + "nodeType": "ExpressionStatement", + "src": "44137:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44049:3:5", + "parameters": { + "id": 18087, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18080, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44067:2:5", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "44053:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18079, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44053:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18082, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44079:2:5", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "44071:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18081, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44071:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18084, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44091:2:5", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "44083:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44083:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18086, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44109:2:5", + "nodeType": "VariableDeclaration", + "scope": 18101, + "src": "44095:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18085, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44095:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "44052:60:5" + }, + "returnParameters": { + "id": 18088, + "nodeType": "ParameterList", + "parameters": [], + "src": "44127:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18124, + "nodeType": "FunctionDefinition", + "src": "44244:187:5", + "body": { + "id": 18123, + "nodeType": "Block", + "src": "44322:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c626f6f6c29", + "id": 18115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44372:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + "value": "log(string,address,address,bool)" + }, + { + "id": 18116, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18103, + "src": "44408:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18117, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18105, + "src": "44412:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18118, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18107, + "src": "44416:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18119, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18109, + "src": "44420:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b59dbd60587b4eeae521d5427cbc88bff32729f88aff059e7deb0a3a4320aaf4", + "typeString": "literal_string \"log(string,address,address,bool)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18113, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44348:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18114, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44348:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44348:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18112, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "44332:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44332:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18122, + "nodeType": "ExpressionStatement", + "src": "44332:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44253:3:5", + "parameters": { + "id": 18110, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18103, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44271:2:5", + "nodeType": "VariableDeclaration", + "scope": 18124, + "src": "44257:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18102, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44257:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18105, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44283:2:5", + "nodeType": "VariableDeclaration", + "scope": 18124, + "src": "44275:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18104, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44275:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18107, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44295:2:5", + "nodeType": "VariableDeclaration", + "scope": 18124, + "src": "44287:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18106, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44287:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18109, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44304:2:5", + "nodeType": "VariableDeclaration", + "scope": 18124, + "src": "44299:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18108, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44299:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "44256:51:5" + }, + "returnParameters": { + "id": 18111, + "nodeType": "ParameterList", + "parameters": [], + "src": "44322:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18147, + "nodeType": "FunctionDefinition", + "src": "44437:193:5", + "body": { + "id": 18146, + "nodeType": "Block", + "src": "44518:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728737472696e672c616464726573732c616464726573732c6164647265737329", + "id": 18138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44568:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + "value": "log(string,address,address,address)" + }, + { + "id": 18139, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18126, + "src": "44607:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18140, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18128, + "src": "44611:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18141, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18130, + "src": "44615:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18142, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18132, + "src": "44619:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ed8f28f6f4b5d54b1d37f705e543f556805f28b9d1bb3aef0ef7e57ef4992d15", + "typeString": "literal_string \"log(string,address,address,address)\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18136, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44544:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18137, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44544:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44544:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18135, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "44528:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44528:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18145, + "nodeType": "ExpressionStatement", + "src": "44528:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44446:3:5", + "parameters": { + "id": 18133, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18126, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44464:2:5", + "nodeType": "VariableDeclaration", + "scope": 18147, + "src": "44450:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18125, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44450:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18128, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44476:2:5", + "nodeType": "VariableDeclaration", + "scope": 18147, + "src": "44468:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18127, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44468:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18130, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44488:2:5", + "nodeType": "VariableDeclaration", + "scope": 18147, + "src": "44480:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18129, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44480:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18132, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44500:2:5", + "nodeType": "VariableDeclaration", + "scope": 18147, + "src": "44492:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18131, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "44492:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "44449:54:5" + }, + "returnParameters": { + "id": 18134, + "nodeType": "ParameterList", + "parameters": [], + "src": "44518:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18170, + "nodeType": "FunctionDefinition", + "src": "44636:182:5", + "body": { + "id": 18169, + "nodeType": "Block", + "src": "44708:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c75696e7432353629", + "id": 18161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44758:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_374bb4b29e495d2b557643d341fe72136bf6e92f2ac9b1edd86dbbd72a19d62b", + "typeString": "literal_string \"log(bool,uint256,uint256,uint256)\"" + }, + "value": "log(bool,uint256,uint256,uint256)" + }, + { + "id": 18162, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18149, + "src": "44795:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18163, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18151, + "src": "44799:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18164, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18153, + "src": "44803:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18165, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18155, + "src": "44807:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_374bb4b29e495d2b557643d341fe72136bf6e92f2ac9b1edd86dbbd72a19d62b", + "typeString": "literal_string \"log(bool,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18159, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44734:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44734:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44734:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18158, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "44718:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44718:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18168, + "nodeType": "ExpressionStatement", + "src": "44718:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44645:3:5", + "parameters": { + "id": 18156, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18149, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44654:2:5", + "nodeType": "VariableDeclaration", + "scope": 18170, + "src": "44649:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18148, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44649:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18151, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44666:2:5", + "nodeType": "VariableDeclaration", + "scope": 18170, + "src": "44658:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18150, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44658:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18153, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44678:2:5", + "nodeType": "VariableDeclaration", + "scope": 18170, + "src": "44670:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18152, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44670:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18155, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44690:2:5", + "nodeType": "VariableDeclaration", + "scope": 18170, + "src": "44682:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18154, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44682:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "44648:45:5" + }, + "returnParameters": { + "id": 18157, + "nodeType": "ParameterList", + "parameters": [], + "src": "44708:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18193, + "nodeType": "FunctionDefinition", + "src": "44824:187:5", + "body": { + "id": 18192, + "nodeType": "Block", + "src": "44902:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c737472696e6729", + "id": 18184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "44952:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8e69fb5dd49f06ae0054ca1d4af84221644c5b45a9306505e04580a4156255c3", + "typeString": "literal_string \"log(bool,uint256,uint256,string)\"" + }, + "value": "log(bool,uint256,uint256,string)" + }, + { + "id": 18185, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18172, + "src": "44988:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18186, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18174, + "src": "44992:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18187, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18176, + "src": "44996:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18188, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18178, + "src": "45000:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8e69fb5dd49f06ae0054ca1d4af84221644c5b45a9306505e04580a4156255c3", + "typeString": "literal_string \"log(bool,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18182, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "44928:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "44928:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18189, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44928:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18181, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "44912:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "44912:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18191, + "nodeType": "ExpressionStatement", + "src": "44912:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "44833:3:5", + "parameters": { + "id": 18179, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18172, + "mutability": "mutable", + "name": "p0", + "nameLocation": "44842:2:5", + "nodeType": "VariableDeclaration", + "scope": 18193, + "src": "44837:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18171, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "44837:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18174, + "mutability": "mutable", + "name": "p1", + "nameLocation": "44854:2:5", + "nodeType": "VariableDeclaration", + "scope": 18193, + "src": "44846:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18173, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44846:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18176, + "mutability": "mutable", + "name": "p2", + "nameLocation": "44866:2:5", + "nodeType": "VariableDeclaration", + "scope": 18193, + "src": "44858:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18175, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "44858:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18178, + "mutability": "mutable", + "name": "p3", + "nameLocation": "44884:2:5", + "nodeType": "VariableDeclaration", + "scope": 18193, + "src": "44870:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18177, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "44870:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "44836:51:5" + }, + "returnParameters": { + "id": 18180, + "nodeType": "ParameterList", + "parameters": [], + "src": "44902:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18216, + "nodeType": "FunctionDefinition", + "src": "45017:176:5", + "body": { + "id": 18215, + "nodeType": "Block", + "src": "45086:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c626f6f6c29", + "id": 18207, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45136:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_be9843530e69b1feba88a3a9701a6984aaa8a57e749a7f9d10c857993e79900d", + "typeString": "literal_string \"log(bool,uint256,uint256,bool)\"" + }, + "value": "log(bool,uint256,uint256,bool)" + }, + { + "id": 18208, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18195, + "src": "45170:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18209, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18197, + "src": "45174:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18210, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18199, + "src": "45178:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18211, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18201, + "src": "45182:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_be9843530e69b1feba88a3a9701a6984aaa8a57e749a7f9d10c857993e79900d", + "typeString": "literal_string \"log(bool,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18205, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45112:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45112:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45112:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18204, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "45096:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45096:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18214, + "nodeType": "ExpressionStatement", + "src": "45096:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45026:3:5", + "parameters": { + "id": 18202, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18195, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45035:2:5", + "nodeType": "VariableDeclaration", + "scope": 18216, + "src": "45030:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18194, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45030:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18197, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45047:2:5", + "nodeType": "VariableDeclaration", + "scope": 18216, + "src": "45039:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18196, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45039:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18199, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45059:2:5", + "nodeType": "VariableDeclaration", + "scope": 18216, + "src": "45051:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18198, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45051:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18201, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45068:2:5", + "nodeType": "VariableDeclaration", + "scope": 18216, + "src": "45063:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18200, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45063:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "45029:42:5" + }, + "returnParameters": { + "id": 18203, + "nodeType": "ParameterList", + "parameters": [], + "src": "45086:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18239, + "nodeType": "FunctionDefinition", + "src": "45199:182:5", + "body": { + "id": 18238, + "nodeType": "Block", + "src": "45271:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c75696e743235362c6164647265737329", + "id": 18230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45321:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_00dd87b926eb0a94d5705f2c40026359b9577dfd5ddb2d0d51c86b3f4acb5010", + "typeString": "literal_string \"log(bool,uint256,uint256,address)\"" + }, + "value": "log(bool,uint256,uint256,address)" + }, + { + "id": 18231, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18218, + "src": "45358:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18232, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18220, + "src": "45362:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18233, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18222, + "src": "45366:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18234, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18224, + "src": "45370:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_00dd87b926eb0a94d5705f2c40026359b9577dfd5ddb2d0d51c86b3f4acb5010", + "typeString": "literal_string \"log(bool,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45297:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45297:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45297:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18227, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "45281:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45281:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18237, + "nodeType": "ExpressionStatement", + "src": "45281:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45208:3:5", + "parameters": { + "id": 18225, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18218, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45217:2:5", + "nodeType": "VariableDeclaration", + "scope": 18239, + "src": "45212:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18217, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45212:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18220, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45229:2:5", + "nodeType": "VariableDeclaration", + "scope": 18239, + "src": "45221:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45221:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18222, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45241:2:5", + "nodeType": "VariableDeclaration", + "scope": 18239, + "src": "45233:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18221, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45233:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18224, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45253:2:5", + "nodeType": "VariableDeclaration", + "scope": 18239, + "src": "45245:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18223, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "45245:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "45211:45:5" + }, + "returnParameters": { + "id": 18226, + "nodeType": "ParameterList", + "parameters": [], + "src": "45271:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18262, + "nodeType": "FunctionDefinition", + "src": "45387:187:5", + "body": { + "id": 18261, + "nodeType": "Block", + "src": "45465:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c75696e7432353629", + "id": 18253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45515:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a1199e21848ce015eabd66ea7f6a3409c7fc6ef9bb322d84e4c06706c42747e", + "typeString": "literal_string \"log(bool,uint256,string,uint256)\"" + }, + "value": "log(bool,uint256,string,uint256)" + }, + { + "id": 18254, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18241, + "src": "45551:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18255, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18243, + "src": "45555:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18256, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18245, + "src": "45559:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18257, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18247, + "src": "45563:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6a1199e21848ce015eabd66ea7f6a3409c7fc6ef9bb322d84e4c06706c42747e", + "typeString": "literal_string \"log(bool,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18251, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45491:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18252, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45491:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45491:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18250, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "45475:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45475:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18260, + "nodeType": "ExpressionStatement", + "src": "45475:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45396:3:5", + "parameters": { + "id": 18248, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18241, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45405:2:5", + "nodeType": "VariableDeclaration", + "scope": 18262, + "src": "45400:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18240, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45400:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18243, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45417:2:5", + "nodeType": "VariableDeclaration", + "scope": 18262, + "src": "45409:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18242, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45409:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18245, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45435:2:5", + "nodeType": "VariableDeclaration", + "scope": 18262, + "src": "45421:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18244, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45421:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18247, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45447:2:5", + "nodeType": "VariableDeclaration", + "scope": 18262, + "src": "45439:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18246, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45439:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "45399:51:5" + }, + "returnParameters": { + "id": 18249, + "nodeType": "ParameterList", + "parameters": [], + "src": "45465:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18285, + "nodeType": "FunctionDefinition", + "src": "45580:192:5", + "body": { + "id": 18284, + "nodeType": "Block", + "src": "45664:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c737472696e6729", + "id": 18276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45714:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f5bc2249bce1f463dc4a6cae73d4e7be2aab36b6885cd1506575f16575a67f07", + "typeString": "literal_string \"log(bool,uint256,string,string)\"" + }, + "value": "log(bool,uint256,string,string)" + }, + { + "id": 18277, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18264, + "src": "45749:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18278, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18266, + "src": "45753:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18279, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18268, + "src": "45757:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18280, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18270, + "src": "45761:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f5bc2249bce1f463dc4a6cae73d4e7be2aab36b6885cd1506575f16575a67f07", + "typeString": "literal_string \"log(bool,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18274, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45690:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18275, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45690:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45690:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18273, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "45674:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45674:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18283, + "nodeType": "ExpressionStatement", + "src": "45674:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45589:3:5", + "parameters": { + "id": 18271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18264, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45598:2:5", + "nodeType": "VariableDeclaration", + "scope": 18285, + "src": "45593:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18263, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45593:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18266, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45610:2:5", + "nodeType": "VariableDeclaration", + "scope": 18285, + "src": "45602:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45602:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18268, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45628:2:5", + "nodeType": "VariableDeclaration", + "scope": 18285, + "src": "45614:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18267, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45614:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18270, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45646:2:5", + "nodeType": "VariableDeclaration", + "scope": 18285, + "src": "45632:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18269, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45632:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "45592:57:5" + }, + "returnParameters": { + "id": 18272, + "nodeType": "ParameterList", + "parameters": [], + "src": "45664:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18308, + "nodeType": "FunctionDefinition", + "src": "45778:181:5", + "body": { + "id": 18307, + "nodeType": "Block", + "src": "45853:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c626f6f6c29", + "id": 18299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "45903:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e5e70b2b79ba63a1232a1075e7d527614bad7291574e41ebeb8ef428426395c2", + "typeString": "literal_string \"log(bool,uint256,string,bool)\"" + }, + "value": "log(bool,uint256,string,bool)" + }, + { + "id": 18300, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18287, + "src": "45936:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18301, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18289, + "src": "45940:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18302, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18291, + "src": "45944:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18303, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18293, + "src": "45948:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e5e70b2b79ba63a1232a1075e7d527614bad7291574e41ebeb8ef428426395c2", + "typeString": "literal_string \"log(bool,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18297, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "45879:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "45879:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18304, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45879:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18296, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "45863:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "45863:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18306, + "nodeType": "ExpressionStatement", + "src": "45863:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45787:3:5", + "parameters": { + "id": 18294, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18287, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45796:2:5", + "nodeType": "VariableDeclaration", + "scope": 18308, + "src": "45791:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18286, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45791:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18289, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45808:2:5", + "nodeType": "VariableDeclaration", + "scope": 18308, + "src": "45800:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18288, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45800:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18291, + "mutability": "mutable", + "name": "p2", + "nameLocation": "45826:2:5", + "nodeType": "VariableDeclaration", + "scope": 18308, + "src": "45812:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18290, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45812:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18293, + "mutability": "mutable", + "name": "p3", + "nameLocation": "45835:2:5", + "nodeType": "VariableDeclaration", + "scope": 18308, + "src": "45830:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18292, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45830:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "45790:48:5" + }, + "returnParameters": { + "id": 18295, + "nodeType": "ParameterList", + "parameters": [], + "src": "45853:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18331, + "nodeType": "FunctionDefinition", + "src": "45965:187:5", + "body": { + "id": 18330, + "nodeType": "Block", + "src": "46043:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c737472696e672c6164647265737329", + "id": 18322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46093:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fedd1fffaad08b0e5474b192f50d84da9ca48f54859d4d4f42d00bf3f4781fab", + "typeString": "literal_string \"log(bool,uint256,string,address)\"" + }, + "value": "log(bool,uint256,string,address)" + }, + { + "id": 18323, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18310, + "src": "46129:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18324, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18312, + "src": "46133:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18325, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18314, + "src": "46137:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18326, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18316, + "src": "46141:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fedd1fffaad08b0e5474b192f50d84da9ca48f54859d4d4f42d00bf3f4781fab", + "typeString": "literal_string \"log(bool,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18320, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46069:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18321, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46069:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46069:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18319, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46053:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46053:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18329, + "nodeType": "ExpressionStatement", + "src": "46053:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "45974:3:5", + "parameters": { + "id": 18317, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18310, + "mutability": "mutable", + "name": "p0", + "nameLocation": "45983:2:5", + "nodeType": "VariableDeclaration", + "scope": 18331, + "src": "45978:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18309, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "45978:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18312, + "mutability": "mutable", + "name": "p1", + "nameLocation": "45995:2:5", + "nodeType": "VariableDeclaration", + "scope": 18331, + "src": "45987:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18311, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "45987:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18314, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46013:2:5", + "nodeType": "VariableDeclaration", + "scope": 18331, + "src": "45999:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18313, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "45999:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18316, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46025:2:5", + "nodeType": "VariableDeclaration", + "scope": 18331, + "src": "46017:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18315, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46017:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "45977:51:5" + }, + "returnParameters": { + "id": 18318, + "nodeType": "ParameterList", + "parameters": [], + "src": "46043:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18354, + "nodeType": "FunctionDefinition", + "src": "46158:176:5", + "body": { + "id": 18353, + "nodeType": "Block", + "src": "46227:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c75696e7432353629", + "id": 18345, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46277:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7f9bbca288abffbb423da5759392c2bb0e6c7c60dc55ee1c76da7b38adac1443", + "typeString": "literal_string \"log(bool,uint256,bool,uint256)\"" + }, + "value": "log(bool,uint256,bool,uint256)" + }, + { + "id": 18346, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18333, + "src": "46311:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18347, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18335, + "src": "46315:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18348, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18337, + "src": "46319:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18349, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18339, + "src": "46323:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7f9bbca288abffbb423da5759392c2bb0e6c7c60dc55ee1c76da7b38adac1443", + "typeString": "literal_string \"log(bool,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18343, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46253:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18344, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46253:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46253:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18342, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46237:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46237:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18352, + "nodeType": "ExpressionStatement", + "src": "46237:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46167:3:5", + "parameters": { + "id": 18340, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18333, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46176:2:5", + "nodeType": "VariableDeclaration", + "scope": 18354, + "src": "46171:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18332, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46171:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18335, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46188:2:5", + "nodeType": "VariableDeclaration", + "scope": 18354, + "src": "46180:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18334, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46180:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18337, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46197:2:5", + "nodeType": "VariableDeclaration", + "scope": 18354, + "src": "46192:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18336, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46192:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18339, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46209:2:5", + "nodeType": "VariableDeclaration", + "scope": 18354, + "src": "46201:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18338, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46201:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "46170:42:5" + }, + "returnParameters": { + "id": 18341, + "nodeType": "ParameterList", + "parameters": [], + "src": "46227:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18377, + "nodeType": "FunctionDefinition", + "src": "46340:181:5", + "body": { + "id": 18376, + "nodeType": "Block", + "src": "46415:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c737472696e6729", + "id": 18368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46465:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9143dbb14a0962a6e3d7ec52e236cb9bf165b86383a96499ea4cf52b827d7ce0", + "typeString": "literal_string \"log(bool,uint256,bool,string)\"" + }, + "value": "log(bool,uint256,bool,string)" + }, + { + "id": 18369, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18356, + "src": "46498:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18370, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18358, + "src": "46502:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18371, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18360, + "src": "46506:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18372, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18362, + "src": "46510:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9143dbb14a0962a6e3d7ec52e236cb9bf165b86383a96499ea4cf52b827d7ce0", + "typeString": "literal_string \"log(bool,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18366, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46441:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18367, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46441:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18373, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46441:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18365, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46425:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46425:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18375, + "nodeType": "ExpressionStatement", + "src": "46425:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46349:3:5", + "parameters": { + "id": 18363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18356, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46358:2:5", + "nodeType": "VariableDeclaration", + "scope": 18377, + "src": "46353:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18355, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46353:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18358, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46370:2:5", + "nodeType": "VariableDeclaration", + "scope": 18377, + "src": "46362:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18357, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46362:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18360, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46379:2:5", + "nodeType": "VariableDeclaration", + "scope": 18377, + "src": "46374:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18359, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46374:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18362, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46397:2:5", + "nodeType": "VariableDeclaration", + "scope": 18377, + "src": "46383:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18361, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "46383:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "46352:48:5" + }, + "returnParameters": { + "id": 18364, + "nodeType": "ParameterList", + "parameters": [], + "src": "46415:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18400, + "nodeType": "FunctionDefinition", + "src": "46527:170:5", + "body": { + "id": 18399, + "nodeType": "Block", + "src": "46593:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c626f6f6c29", + "id": 18391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46643:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ceb5f4d77121f3d3cfafeaa403e6fff70e4470d0bfb40c1d850f89e3d65029f2", + "typeString": "literal_string \"log(bool,uint256,bool,bool)\"" + }, + "value": "log(bool,uint256,bool,bool)" + }, + { + "id": 18392, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18379, + "src": "46674:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18393, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18381, + "src": "46678:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18394, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18383, + "src": "46682:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18395, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18385, + "src": "46686:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ceb5f4d77121f3d3cfafeaa403e6fff70e4470d0bfb40c1d850f89e3d65029f2", + "typeString": "literal_string \"log(bool,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18389, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46619:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18390, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46619:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46619:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18388, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46603:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46603:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18398, + "nodeType": "ExpressionStatement", + "src": "46603:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46536:3:5", + "parameters": { + "id": 18386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18379, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46545:2:5", + "nodeType": "VariableDeclaration", + "scope": 18400, + "src": "46540:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18378, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46540:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18381, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46557:2:5", + "nodeType": "VariableDeclaration", + "scope": 18400, + "src": "46549:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18380, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46549:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18383, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46566:2:5", + "nodeType": "VariableDeclaration", + "scope": 18400, + "src": "46561:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18382, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46561:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18385, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46575:2:5", + "nodeType": "VariableDeclaration", + "scope": 18400, + "src": "46570:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18384, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46570:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "46539:39:5" + }, + "returnParameters": { + "id": 18387, + "nodeType": "ParameterList", + "parameters": [], + "src": "46593:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18423, + "nodeType": "FunctionDefinition", + "src": "46703:176:5", + "body": { + "id": 18422, + "nodeType": "Block", + "src": "46772:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c626f6f6c2c6164647265737329", + "id": 18414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "46822:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9acd3616ce3d15d7b870c591206f600266707f40592e6070353f762f54c75a2e", + "typeString": "literal_string \"log(bool,uint256,bool,address)\"" + }, + "value": "log(bool,uint256,bool,address)" + }, + { + "id": 18415, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18402, + "src": "46856:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18416, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18404, + "src": "46860:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18417, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18406, + "src": "46864:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18418, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18408, + "src": "46868:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9acd3616ce3d15d7b870c591206f600266707f40592e6070353f762f54c75a2e", + "typeString": "literal_string \"log(bool,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18412, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46798:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46798:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46798:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18411, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46782:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46782:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18421, + "nodeType": "ExpressionStatement", + "src": "46782:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46712:3:5", + "parameters": { + "id": 18409, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18402, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46721:2:5", + "nodeType": "VariableDeclaration", + "scope": 18423, + "src": "46716:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18401, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46716:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18404, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46733:2:5", + "nodeType": "VariableDeclaration", + "scope": 18423, + "src": "46725:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18403, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46725:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18406, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46742:2:5", + "nodeType": "VariableDeclaration", + "scope": 18423, + "src": "46737:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18405, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46737:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18408, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46754:2:5", + "nodeType": "VariableDeclaration", + "scope": 18423, + "src": "46746:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18407, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46746:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "46715:42:5" + }, + "returnParameters": { + "id": 18410, + "nodeType": "ParameterList", + "parameters": [], + "src": "46772:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18446, + "nodeType": "FunctionDefinition", + "src": "46885:182:5", + "body": { + "id": 18445, + "nodeType": "Block", + "src": "46957:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c75696e7432353629", + "id": 18437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47007:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1537dc87a2086882c18d77c4157142ca3b6771cb00e940824367191cd9b5e560", + "typeString": "literal_string \"log(bool,uint256,address,uint256)\"" + }, + "value": "log(bool,uint256,address,uint256)" + }, + { + "id": 18438, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18425, + "src": "47044:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18439, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18427, + "src": "47048:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18440, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18429, + "src": "47052:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18441, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18431, + "src": "47056:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1537dc87a2086882c18d77c4157142ca3b6771cb00e940824367191cd9b5e560", + "typeString": "literal_string \"log(bool,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18435, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "46983:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "46983:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46983:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18434, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "46967:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "46967:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18444, + "nodeType": "ExpressionStatement", + "src": "46967:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "46894:3:5", + "parameters": { + "id": 18432, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18425, + "mutability": "mutable", + "name": "p0", + "nameLocation": "46903:2:5", + "nodeType": "VariableDeclaration", + "scope": 18446, + "src": "46898:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18424, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "46898:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18427, + "mutability": "mutable", + "name": "p1", + "nameLocation": "46915:2:5", + "nodeType": "VariableDeclaration", + "scope": 18446, + "src": "46907:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18426, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46907:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18429, + "mutability": "mutable", + "name": "p2", + "nameLocation": "46927:2:5", + "nodeType": "VariableDeclaration", + "scope": 18446, + "src": "46919:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18428, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "46919:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18431, + "mutability": "mutable", + "name": "p3", + "nameLocation": "46939:2:5", + "nodeType": "VariableDeclaration", + "scope": 18446, + "src": "46931:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18430, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "46931:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "46897:45:5" + }, + "returnParameters": { + "id": 18433, + "nodeType": "ParameterList", + "parameters": [], + "src": "46957:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18469, + "nodeType": "FunctionDefinition", + "src": "47073:187:5", + "body": { + "id": 18468, + "nodeType": "Block", + "src": "47151:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c737472696e6729", + "id": 18460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47201:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1bb3b09a4221f0a7df6a4e6e8ee3a14c54c5ebf8032d4ada871c774122536c94", + "typeString": "literal_string \"log(bool,uint256,address,string)\"" + }, + "value": "log(bool,uint256,address,string)" + }, + { + "id": 18461, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18448, + "src": "47237:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18462, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18450, + "src": "47241:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18463, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18452, + "src": "47245:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18464, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18454, + "src": "47249:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1bb3b09a4221f0a7df6a4e6e8ee3a14c54c5ebf8032d4ada871c774122536c94", + "typeString": "literal_string \"log(bool,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18458, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47177:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18459, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47177:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47177:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18457, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "47161:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47161:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18467, + "nodeType": "ExpressionStatement", + "src": "47161:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47082:3:5", + "parameters": { + "id": 18455, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18448, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47091:2:5", + "nodeType": "VariableDeclaration", + "scope": 18469, + "src": "47086:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18447, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47086:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18450, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47103:2:5", + "nodeType": "VariableDeclaration", + "scope": 18469, + "src": "47095:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18449, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47095:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18452, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47115:2:5", + "nodeType": "VariableDeclaration", + "scope": 18469, + "src": "47107:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18451, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47107:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18454, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47133:2:5", + "nodeType": "VariableDeclaration", + "scope": 18469, + "src": "47119:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18453, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47119:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "47085:51:5" + }, + "returnParameters": { + "id": 18456, + "nodeType": "ParameterList", + "parameters": [], + "src": "47151:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18492, + "nodeType": "FunctionDefinition", + "src": "47266:176:5", + "body": { + "id": 18491, + "nodeType": "Block", + "src": "47335:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c626f6f6c29", + "id": 18483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47385:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b4c314ff4d8914c4657179922b73426f4bcee4ae499bd03b5b3cf557ef247ea8", + "typeString": "literal_string \"log(bool,uint256,address,bool)\"" + }, + "value": "log(bool,uint256,address,bool)" + }, + { + "id": 18484, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18471, + "src": "47419:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18485, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18473, + "src": "47423:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18486, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18475, + "src": "47427:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18487, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18477, + "src": "47431:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b4c314ff4d8914c4657179922b73426f4bcee4ae499bd03b5b3cf557ef247ea8", + "typeString": "literal_string \"log(bool,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18481, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47361:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18482, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47361:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18488, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47361:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18480, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "47345:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47345:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18490, + "nodeType": "ExpressionStatement", + "src": "47345:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47275:3:5", + "parameters": { + "id": 18478, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18471, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47284:2:5", + "nodeType": "VariableDeclaration", + "scope": 18492, + "src": "47279:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18470, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47279:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18473, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47296:2:5", + "nodeType": "VariableDeclaration", + "scope": 18492, + "src": "47288:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18472, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47288:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18475, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47308:2:5", + "nodeType": "VariableDeclaration", + "scope": 18492, + "src": "47300:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18474, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47300:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18477, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47317:2:5", + "nodeType": "VariableDeclaration", + "scope": 18492, + "src": "47312:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18476, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47312:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "47278:42:5" + }, + "returnParameters": { + "id": 18479, + "nodeType": "ParameterList", + "parameters": [], + "src": "47335:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18515, + "nodeType": "FunctionDefinition", + "src": "47448:182:5", + "body": { + "id": 18514, + "nodeType": "Block", + "src": "47520:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c75696e743235362c616464726573732c6164647265737329", + "id": 18506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47570:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_26f560a852938fadf6addef4dd03c86f93715a295417544d6a793cb20f13b8dd", + "typeString": "literal_string \"log(bool,uint256,address,address)\"" + }, + "value": "log(bool,uint256,address,address)" + }, + { + "id": 18507, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18494, + "src": "47607:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18508, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18496, + "src": "47611:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18509, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18498, + "src": "47615:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18510, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18500, + "src": "47619:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_26f560a852938fadf6addef4dd03c86f93715a295417544d6a793cb20f13b8dd", + "typeString": "literal_string \"log(bool,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18504, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47546:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18505, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47546:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47546:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18503, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "47530:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47530:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18513, + "nodeType": "ExpressionStatement", + "src": "47530:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47457:3:5", + "parameters": { + "id": 18501, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18494, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47466:2:5", + "nodeType": "VariableDeclaration", + "scope": 18515, + "src": "47461:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18493, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47461:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18496, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47478:2:5", + "nodeType": "VariableDeclaration", + "scope": 18515, + "src": "47470:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18495, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47470:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18498, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47490:2:5", + "nodeType": "VariableDeclaration", + "scope": 18515, + "src": "47482:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18497, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47482:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18500, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47502:2:5", + "nodeType": "VariableDeclaration", + "scope": 18515, + "src": "47494:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18499, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "47494:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "47460:45:5" + }, + "returnParameters": { + "id": 18502, + "nodeType": "ParameterList", + "parameters": [], + "src": "47520:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18538, + "nodeType": "FunctionDefinition", + "src": "47636:187:5", + "body": { + "id": 18537, + "nodeType": "Block", + "src": "47714:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c75696e7432353629", + "id": 18529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47764:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_28863fcbec29a80af15c2b8595f162a2324efa0e9f70b928971349e597c15cb0", + "typeString": "literal_string \"log(bool,string,uint256,uint256)\"" + }, + "value": "log(bool,string,uint256,uint256)" + }, + { + "id": 18530, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18517, + "src": "47800:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18531, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18519, + "src": "47804:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18532, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18521, + "src": "47808:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18533, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18523, + "src": "47812:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_28863fcbec29a80af15c2b8595f162a2324efa0e9f70b928971349e597c15cb0", + "typeString": "literal_string \"log(bool,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18527, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47740:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18528, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47740:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47740:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18526, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "47724:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47724:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18536, + "nodeType": "ExpressionStatement", + "src": "47724:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47645:3:5", + "parameters": { + "id": 18524, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18517, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47654:2:5", + "nodeType": "VariableDeclaration", + "scope": 18538, + "src": "47649:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18516, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47649:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18519, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47672:2:5", + "nodeType": "VariableDeclaration", + "scope": 18538, + "src": "47658:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18518, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47658:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18521, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47684:2:5", + "nodeType": "VariableDeclaration", + "scope": 18538, + "src": "47676:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18520, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47676:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18523, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47696:2:5", + "nodeType": "VariableDeclaration", + "scope": 18538, + "src": "47688:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18522, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47688:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "47648:51:5" + }, + "returnParameters": { + "id": 18525, + "nodeType": "ParameterList", + "parameters": [], + "src": "47714:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18561, + "nodeType": "FunctionDefinition", + "src": "47829:192:5", + "body": { + "id": 18560, + "nodeType": "Block", + "src": "47913:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c737472696e6729", + "id": 18552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "47963:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1ad96de6602c0b08f6631d6647303bccf3e586fcfa2c15fa04c5d6cbf0ffc70d", + "typeString": "literal_string \"log(bool,string,uint256,string)\"" + }, + "value": "log(bool,string,uint256,string)" + }, + { + "id": 18553, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18540, + "src": "47998:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18554, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18542, + "src": "48002:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18555, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18544, + "src": "48006:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18556, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18546, + "src": "48010:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1ad96de6602c0b08f6631d6647303bccf3e586fcfa2c15fa04c5d6cbf0ffc70d", + "typeString": "literal_string \"log(bool,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18550, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "47939:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18551, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "47939:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47939:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18549, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "47923:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "47923:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18559, + "nodeType": "ExpressionStatement", + "src": "47923:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "47838:3:5", + "parameters": { + "id": 18547, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18540, + "mutability": "mutable", + "name": "p0", + "nameLocation": "47847:2:5", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "47842:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18539, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "47842:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18542, + "mutability": "mutable", + "name": "p1", + "nameLocation": "47865:2:5", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "47851:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18541, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47851:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18544, + "mutability": "mutable", + "name": "p2", + "nameLocation": "47877:2:5", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "47869:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18543, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "47869:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18546, + "mutability": "mutable", + "name": "p3", + "nameLocation": "47895:2:5", + "nodeType": "VariableDeclaration", + "scope": 18561, + "src": "47881:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18545, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "47881:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "47841:57:5" + }, + "returnParameters": { + "id": 18548, + "nodeType": "ParameterList", + "parameters": [], + "src": "47913:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18584, + "nodeType": "FunctionDefinition", + "src": "48027:181:5", + "body": { + "id": 18583, + "nodeType": "Block", + "src": "48102:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c626f6f6c29", + "id": 18575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48152:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6b0e5d538cb3332d8fd45a0c2680232536414e292adbc2f70059f1d665e25411", + "typeString": "literal_string \"log(bool,string,uint256,bool)\"" + }, + "value": "log(bool,string,uint256,bool)" + }, + { + "id": 18576, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18563, + "src": "48185:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18577, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18565, + "src": "48189:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18578, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18567, + "src": "48193:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18579, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18569, + "src": "48197:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6b0e5d538cb3332d8fd45a0c2680232536414e292adbc2f70059f1d665e25411", + "typeString": "literal_string \"log(bool,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48128:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48128:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18580, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48128:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18572, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "48112:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48112:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18582, + "nodeType": "ExpressionStatement", + "src": "48112:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48036:3:5", + "parameters": { + "id": 18570, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18563, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48045:2:5", + "nodeType": "VariableDeclaration", + "scope": 18584, + "src": "48040:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18562, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48040:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18565, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48063:2:5", + "nodeType": "VariableDeclaration", + "scope": 18584, + "src": "48049:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18564, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48049:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18567, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48075:2:5", + "nodeType": "VariableDeclaration", + "scope": 18584, + "src": "48067:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18566, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48067:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18569, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48084:2:5", + "nodeType": "VariableDeclaration", + "scope": 18584, + "src": "48079:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18568, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48079:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "48039:48:5" + }, + "returnParameters": { + "id": 18571, + "nodeType": "ParameterList", + "parameters": [], + "src": "48102:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18607, + "nodeType": "FunctionDefinition", + "src": "48214:187:5", + "body": { + "id": 18606, + "nodeType": "Block", + "src": "48292:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c75696e743235362c6164647265737329", + "id": 18598, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48342:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1596a1ceb88c7fe162cbcf294bbc564db1eb943f277b50b442bf55dba1134056", + "typeString": "literal_string \"log(bool,string,uint256,address)\"" + }, + "value": "log(bool,string,uint256,address)" + }, + { + "id": 18599, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18586, + "src": "48378:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18600, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18588, + "src": "48382:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18601, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18590, + "src": "48386:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18602, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18592, + "src": "48390:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1596a1ceb88c7fe162cbcf294bbc564db1eb943f277b50b442bf55dba1134056", + "typeString": "literal_string \"log(bool,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18596, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48318:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18597, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48318:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48318:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18595, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "48302:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48302:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18605, + "nodeType": "ExpressionStatement", + "src": "48302:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48223:3:5", + "parameters": { + "id": 18593, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18586, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48232:2:5", + "nodeType": "VariableDeclaration", + "scope": 18607, + "src": "48227:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18585, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48227:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18588, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48250:2:5", + "nodeType": "VariableDeclaration", + "scope": 18607, + "src": "48236:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18587, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48236:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18590, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48262:2:5", + "nodeType": "VariableDeclaration", + "scope": 18607, + "src": "48254:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18589, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48254:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18592, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48274:2:5", + "nodeType": "VariableDeclaration", + "scope": 18607, + "src": "48266:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18591, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "48266:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "48226:51:5" + }, + "returnParameters": { + "id": 18594, + "nodeType": "ParameterList", + "parameters": [], + "src": "48292:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18630, + "nodeType": "FunctionDefinition", + "src": "48407:192:5", + "body": { + "id": 18629, + "nodeType": "Block", + "src": "48491:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c75696e7432353629", + "id": 18621, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48541:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7be0c3eb1e87c47c60c12330b930fb496493960f97b03f8342bbe08fec9d20a2", + "typeString": "literal_string \"log(bool,string,string,uint256)\"" + }, + "value": "log(bool,string,string,uint256)" + }, + { + "id": 18622, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18609, + "src": "48576:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18623, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18611, + "src": "48580:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18624, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18613, + "src": "48584:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18625, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18615, + "src": "48588:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7be0c3eb1e87c47c60c12330b930fb496493960f97b03f8342bbe08fec9d20a2", + "typeString": "literal_string \"log(bool,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18619, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48517:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48517:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48517:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18618, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "48501:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48501:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18628, + "nodeType": "ExpressionStatement", + "src": "48501:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48416:3:5", + "parameters": { + "id": 18616, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18609, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48425:2:5", + "nodeType": "VariableDeclaration", + "scope": 18630, + "src": "48420:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18608, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48420:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18611, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48443:2:5", + "nodeType": "VariableDeclaration", + "scope": 18630, + "src": "48429:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18610, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48429:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18613, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48461:2:5", + "nodeType": "VariableDeclaration", + "scope": 18630, + "src": "48447:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18612, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48447:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18615, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48473:2:5", + "nodeType": "VariableDeclaration", + "scope": 18630, + "src": "48465:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18614, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "48465:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "48419:57:5" + }, + "returnParameters": { + "id": 18617, + "nodeType": "ParameterList", + "parameters": [], + "src": "48491:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18653, + "nodeType": "FunctionDefinition", + "src": "48605:197:5", + "body": { + "id": 18652, + "nodeType": "Block", + "src": "48695:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c737472696e6729", + "id": 18644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48745:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + "value": "log(bool,string,string,string)" + }, + { + "id": 18645, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18632, + "src": "48779:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18646, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18634, + "src": "48783:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18647, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18636, + "src": "48787:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18648, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18638, + "src": "48791:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1762e32af9fa924f818d8f4a6c92011d30129df73749081e0b95feea819a17c9", + "typeString": "literal_string \"log(bool,string,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18642, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48721:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18643, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48721:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18649, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48721:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18641, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "48705:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48705:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18651, + "nodeType": "ExpressionStatement", + "src": "48705:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48614:3:5", + "parameters": { + "id": 18639, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18632, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48623:2:5", + "nodeType": "VariableDeclaration", + "scope": 18653, + "src": "48618:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18631, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48618:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18634, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48641:2:5", + "nodeType": "VariableDeclaration", + "scope": 18653, + "src": "48627:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18633, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48627:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18636, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48659:2:5", + "nodeType": "VariableDeclaration", + "scope": 18653, + "src": "48645:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18635, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48645:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18638, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48677:2:5", + "nodeType": "VariableDeclaration", + "scope": 18653, + "src": "48663:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18637, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48663:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "48617:63:5" + }, + "returnParameters": { + "id": 18640, + "nodeType": "ParameterList", + "parameters": [], + "src": "48695:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18676, + "nodeType": "FunctionDefinition", + "src": "48808:186:5", + "body": { + "id": 18675, + "nodeType": "Block", + "src": "48889:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c626f6f6c29", + "id": 18667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "48939:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + "value": "log(bool,string,string,bool)" + }, + { + "id": 18668, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18655, + "src": "48971:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18669, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18657, + "src": "48975:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18670, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18659, + "src": "48979:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18671, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18661, + "src": "48983:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1e4b87e52d13efc5b368defba0463e423637ec55125c6230945d005f817198d1", + "typeString": "literal_string \"log(bool,string,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18665, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "48915:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "48915:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48915:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18664, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "48899:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "48899:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18674, + "nodeType": "ExpressionStatement", + "src": "48899:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "48817:3:5", + "parameters": { + "id": 18662, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18655, + "mutability": "mutable", + "name": "p0", + "nameLocation": "48826:2:5", + "nodeType": "VariableDeclaration", + "scope": 18676, + "src": "48821:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18654, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48821:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18657, + "mutability": "mutable", + "name": "p1", + "nameLocation": "48844:2:5", + "nodeType": "VariableDeclaration", + "scope": 18676, + "src": "48830:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18656, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48830:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18659, + "mutability": "mutable", + "name": "p2", + "nameLocation": "48862:2:5", + "nodeType": "VariableDeclaration", + "scope": 18676, + "src": "48848:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18658, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "48848:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18661, + "mutability": "mutable", + "name": "p3", + "nameLocation": "48871:2:5", + "nodeType": "VariableDeclaration", + "scope": 18676, + "src": "48866:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18660, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "48866:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "48820:54:5" + }, + "returnParameters": { + "id": 18663, + "nodeType": "ParameterList", + "parameters": [], + "src": "48889:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18699, + "nodeType": "FunctionDefinition", + "src": "49000:192:5", + "body": { + "id": 18698, + "nodeType": "Block", + "src": "49084:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c737472696e672c6164647265737329", + "id": 18690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49134:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + "value": "log(bool,string,string,address)" + }, + { + "id": 18691, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18678, + "src": "49169:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18692, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18680, + "src": "49173:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18693, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18682, + "src": "49177:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18694, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18684, + "src": "49181:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_97d394d89551bd441d1340d1c3dcc3b6160871bf042c6884bcb4049b2fa2bdb5", + "typeString": "literal_string \"log(bool,string,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18688, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49110:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18689, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49110:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18695, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49110:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18687, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "49094:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49094:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18697, + "nodeType": "ExpressionStatement", + "src": "49094:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49009:3:5", + "parameters": { + "id": 18685, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18678, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49018:2:5", + "nodeType": "VariableDeclaration", + "scope": 18699, + "src": "49013:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18677, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49013:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18680, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49036:2:5", + "nodeType": "VariableDeclaration", + "scope": 18699, + "src": "49022:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18679, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49022:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18682, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49054:2:5", + "nodeType": "VariableDeclaration", + "scope": 18699, + "src": "49040:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18681, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49040:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18684, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49066:2:5", + "nodeType": "VariableDeclaration", + "scope": 18699, + "src": "49058:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18683, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49058:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "49012:57:5" + }, + "returnParameters": { + "id": 18686, + "nodeType": "ParameterList", + "parameters": [], + "src": "49084:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18722, + "nodeType": "FunctionDefinition", + "src": "49198:181:5", + "body": { + "id": 18721, + "nodeType": "Block", + "src": "49273:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c75696e7432353629", + "id": 18713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49323:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1606a393d6d8ee0e5b372b3b4baba691a3700cb155888ecb60500deb6038e937", + "typeString": "literal_string \"log(bool,string,bool,uint256)\"" + }, + "value": "log(bool,string,bool,uint256)" + }, + { + "id": 18714, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18701, + "src": "49356:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18715, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18703, + "src": "49360:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18716, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18705, + "src": "49364:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18717, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18707, + "src": "49368:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1606a393d6d8ee0e5b372b3b4baba691a3700cb155888ecb60500deb6038e937", + "typeString": "literal_string \"log(bool,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18711, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49299:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18712, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49299:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18718, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49299:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18710, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "49283:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49283:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18720, + "nodeType": "ExpressionStatement", + "src": "49283:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49207:3:5", + "parameters": { + "id": 18708, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18701, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49216:2:5", + "nodeType": "VariableDeclaration", + "scope": 18722, + "src": "49211:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18700, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49211:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18703, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49234:2:5", + "nodeType": "VariableDeclaration", + "scope": 18722, + "src": "49220:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18702, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49220:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18705, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49243:2:5", + "nodeType": "VariableDeclaration", + "scope": 18722, + "src": "49238:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18704, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49238:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18707, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49255:2:5", + "nodeType": "VariableDeclaration", + "scope": 18722, + "src": "49247:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18706, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "49247:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "49210:48:5" + }, + "returnParameters": { + "id": 18709, + "nodeType": "ParameterList", + "parameters": [], + "src": "49273:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18745, + "nodeType": "FunctionDefinition", + "src": "49385:186:5", + "body": { + "id": 18744, + "nodeType": "Block", + "src": "49466:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c737472696e6729", + "id": 18736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49516:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + "value": "log(bool,string,bool,string)" + }, + { + "id": 18737, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18724, + "src": "49548:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18738, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18726, + "src": "49552:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18739, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18728, + "src": "49556:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18740, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18730, + "src": "49560:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_483d0416329d0c81c68975a0cac822497c590c00f8ae8be66af490d0f9215468", + "typeString": "literal_string \"log(bool,string,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18734, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49492:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18735, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49492:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18741, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49492:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18733, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "49476:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49476:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18743, + "nodeType": "ExpressionStatement", + "src": "49476:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49394:3:5", + "parameters": { + "id": 18731, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18724, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49403:2:5", + "nodeType": "VariableDeclaration", + "scope": 18745, + "src": "49398:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18723, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49398:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18726, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49421:2:5", + "nodeType": "VariableDeclaration", + "scope": 18745, + "src": "49407:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18725, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49407:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18728, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49430:2:5", + "nodeType": "VariableDeclaration", + "scope": 18745, + "src": "49425:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18727, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49425:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18730, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49448:2:5", + "nodeType": "VariableDeclaration", + "scope": 18745, + "src": "49434:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18729, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49434:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "49397:54:5" + }, + "returnParameters": { + "id": 18732, + "nodeType": "ParameterList", + "parameters": [], + "src": "49466:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18768, + "nodeType": "FunctionDefinition", + "src": "49577:175:5", + "body": { + "id": 18767, + "nodeType": "Block", + "src": "49649:103:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c626f6f6c29", + "id": 18759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49699:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + "value": "log(bool,string,bool,bool)" + }, + { + "id": 18760, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18747, + "src": "49729:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18761, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18749, + "src": "49733:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18762, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18751, + "src": "49737:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18763, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18753, + "src": "49741:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dc5e935b9ccf45ff13b5900aeaf3a593df3e9479fc07e9c213f5fcaa0951e91f", + "typeString": "literal_string \"log(bool,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18757, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49675:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18758, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49675:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49675:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18756, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "49659:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49659:86:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18766, + "nodeType": "ExpressionStatement", + "src": "49659:86:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49586:3:5", + "parameters": { + "id": 18754, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18747, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49595:2:5", + "nodeType": "VariableDeclaration", + "scope": 18768, + "src": "49590:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18746, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49590:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18749, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49613:2:5", + "nodeType": "VariableDeclaration", + "scope": 18768, + "src": "49599:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18748, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49599:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18751, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49622:2:5", + "nodeType": "VariableDeclaration", + "scope": 18768, + "src": "49617:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18750, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49617:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18753, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49631:2:5", + "nodeType": "VariableDeclaration", + "scope": 18768, + "src": "49626:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18752, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49626:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "49589:45:5" + }, + "returnParameters": { + "id": 18755, + "nodeType": "ParameterList", + "parameters": [], + "src": "49649:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18791, + "nodeType": "FunctionDefinition", + "src": "49758:181:5", + "body": { + "id": 18790, + "nodeType": "Block", + "src": "49833:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c626f6f6c2c6164647265737329", + "id": 18782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "49883:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + "value": "log(bool,string,bool,address)" + }, + { + "id": 18783, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18770, + "src": "49916:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18784, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18772, + "src": "49920:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18785, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18774, + "src": "49924:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18786, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18776, + "src": "49928:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_538e06ab06366b189ea53da7c11628ee5730bc373b0bc64719bea1a2afab03c5", + "typeString": "literal_string \"log(bool,string,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18780, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "49859:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18781, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "49859:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49859:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18779, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "49843:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "49843:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18789, + "nodeType": "ExpressionStatement", + "src": "49843:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49767:3:5", + "parameters": { + "id": 18777, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18770, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49776:2:5", + "nodeType": "VariableDeclaration", + "scope": 18791, + "src": "49771:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18769, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49771:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18772, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49794:2:5", + "nodeType": "VariableDeclaration", + "scope": 18791, + "src": "49780:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18771, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49780:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18774, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49803:2:5", + "nodeType": "VariableDeclaration", + "scope": 18791, + "src": "49798:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18773, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49798:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18776, + "mutability": "mutable", + "name": "p3", + "nameLocation": "49815:2:5", + "nodeType": "VariableDeclaration", + "scope": 18791, + "src": "49807:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18775, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49807:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "49770:48:5" + }, + "returnParameters": { + "id": 18778, + "nodeType": "ParameterList", + "parameters": [], + "src": "49833:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18814, + "nodeType": "FunctionDefinition", + "src": "49945:187:5", + "body": { + "id": 18813, + "nodeType": "Block", + "src": "50023:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c75696e7432353629", + "id": 18805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50073:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a5cada94c7dfdda57d4cfcf14da44c63431bfd533756a6e0d0d0a684af164218", + "typeString": "literal_string \"log(bool,string,address,uint256)\"" + }, + "value": "log(bool,string,address,uint256)" + }, + { + "id": 18806, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18793, + "src": "50109:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18807, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18795, + "src": "50113:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18808, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18797, + "src": "50117:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18809, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18799, + "src": "50121:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a5cada94c7dfdda57d4cfcf14da44c63431bfd533756a6e0d0d0a684af164218", + "typeString": "literal_string \"log(bool,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18803, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50049:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18804, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50049:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50049:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18802, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50033:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50033:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18812, + "nodeType": "ExpressionStatement", + "src": "50033:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "49954:3:5", + "parameters": { + "id": 18800, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18793, + "mutability": "mutable", + "name": "p0", + "nameLocation": "49963:2:5", + "nodeType": "VariableDeclaration", + "scope": 18814, + "src": "49958:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18792, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "49958:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18795, + "mutability": "mutable", + "name": "p1", + "nameLocation": "49981:2:5", + "nodeType": "VariableDeclaration", + "scope": 18814, + "src": "49967:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18794, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "49967:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18797, + "mutability": "mutable", + "name": "p2", + "nameLocation": "49993:2:5", + "nodeType": "VariableDeclaration", + "scope": 18814, + "src": "49985:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18796, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "49985:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18799, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50005:2:5", + "nodeType": "VariableDeclaration", + "scope": 18814, + "src": "49997:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18798, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "49997:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "49957:51:5" + }, + "returnParameters": { + "id": 18801, + "nodeType": "ParameterList", + "parameters": [], + "src": "50023:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18837, + "nodeType": "FunctionDefinition", + "src": "50138:192:5", + "body": { + "id": 18836, + "nodeType": "Block", + "src": "50222:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c737472696e6729", + "id": 18828, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50272:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + "value": "log(bool,string,address,string)" + }, + { + "id": 18829, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18816, + "src": "50307:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18830, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18818, + "src": "50311:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18831, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18820, + "src": "50315:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18832, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18822, + "src": "50319:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_12d6c788fea4d6144f2607e1e8821bec55a5c2dfdc4cece41a536f7b7831e7a7", + "typeString": "literal_string \"log(bool,string,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18826, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50248:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18827, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50248:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50248:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18825, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50232:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50232:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18835, + "nodeType": "ExpressionStatement", + "src": "50232:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50147:3:5", + "parameters": { + "id": 18823, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18816, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50156:2:5", + "nodeType": "VariableDeclaration", + "scope": 18837, + "src": "50151:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18815, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50151:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18818, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50174:2:5", + "nodeType": "VariableDeclaration", + "scope": 18837, + "src": "50160:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18817, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50160:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18820, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50186:2:5", + "nodeType": "VariableDeclaration", + "scope": 18837, + "src": "50178:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18819, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50178:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18822, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50204:2:5", + "nodeType": "VariableDeclaration", + "scope": 18837, + "src": "50190:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18821, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50190:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "50150:57:5" + }, + "returnParameters": { + "id": 18824, + "nodeType": "ParameterList", + "parameters": [], + "src": "50222:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18860, + "nodeType": "FunctionDefinition", + "src": "50336:181:5", + "body": { + "id": 18859, + "nodeType": "Block", + "src": "50411:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c626f6f6c29", + "id": 18851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50461:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + "value": "log(bool,string,address,bool)" + }, + { + "id": 18852, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18839, + "src": "50494:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18853, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18841, + "src": "50498:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18854, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18843, + "src": "50502:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18855, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18845, + "src": "50506:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6dd434ca1fa26d491bcd72b7fe69eb72d41cae8eadbda5a7f985734e1b80c67d", + "typeString": "literal_string \"log(bool,string,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18849, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50437:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18850, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50437:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18856, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50437:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18848, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50421:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50421:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18858, + "nodeType": "ExpressionStatement", + "src": "50421:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50345:3:5", + "parameters": { + "id": 18846, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18839, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50354:2:5", + "nodeType": "VariableDeclaration", + "scope": 18860, + "src": "50349:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18838, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50349:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18841, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50372:2:5", + "nodeType": "VariableDeclaration", + "scope": 18860, + "src": "50358:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18840, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50358:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18843, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50384:2:5", + "nodeType": "VariableDeclaration", + "scope": 18860, + "src": "50376:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18842, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50376:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18845, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50393:2:5", + "nodeType": "VariableDeclaration", + "scope": 18860, + "src": "50388:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18844, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50388:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "50348:48:5" + }, + "returnParameters": { + "id": 18847, + "nodeType": "ParameterList", + "parameters": [], + "src": "50411:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18883, + "nodeType": "FunctionDefinition", + "src": "50523:187:5", + "body": { + "id": 18882, + "nodeType": "Block", + "src": "50601:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c737472696e672c616464726573732c6164647265737329", + "id": 18874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50651:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + "value": "log(bool,string,address,address)" + }, + { + "id": 18875, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18862, + "src": "50687:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18876, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18864, + "src": "50691:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18877, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18866, + "src": "50695:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 18878, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18868, + "src": "50699:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2b2b18dc50ecc75180f201de41eca533fbda0c7bf525c06b5b8e87bc1d010822", + "typeString": "literal_string \"log(bool,string,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18872, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50627:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50627:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50627:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18871, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50611:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50611:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18881, + "nodeType": "ExpressionStatement", + "src": "50611:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50532:3:5", + "parameters": { + "id": 18869, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18862, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50541:2:5", + "nodeType": "VariableDeclaration", + "scope": 18883, + "src": "50536:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18861, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50536:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18864, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50559:2:5", + "nodeType": "VariableDeclaration", + "scope": 18883, + "src": "50545:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18863, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50545:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18866, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50571:2:5", + "nodeType": "VariableDeclaration", + "scope": 18883, + "src": "50563:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18865, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50563:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18868, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50583:2:5", + "nodeType": "VariableDeclaration", + "scope": 18883, + "src": "50575:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18867, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "50575:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "50535:51:5" + }, + "returnParameters": { + "id": 18870, + "nodeType": "ParameterList", + "parameters": [], + "src": "50601:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18906, + "nodeType": "FunctionDefinition", + "src": "50716:176:5", + "body": { + "id": 18905, + "nodeType": "Block", + "src": "50785:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c75696e7432353629", + "id": 18897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "50835:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0bb00eab8772a517edb34ef48e9be8dbee2f7b7490bba02909d18953766a9d34", + "typeString": "literal_string \"log(bool,bool,uint256,uint256)\"" + }, + "value": "log(bool,bool,uint256,uint256)" + }, + { + "id": 18898, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18885, + "src": "50869:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18899, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18887, + "src": "50873:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18900, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18889, + "src": "50877:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18901, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18891, + "src": "50881:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0bb00eab8772a517edb34ef48e9be8dbee2f7b7490bba02909d18953766a9d34", + "typeString": "literal_string \"log(bool,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18895, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50811:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50811:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50811:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18894, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50795:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50795:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18904, + "nodeType": "ExpressionStatement", + "src": "50795:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50725:3:5", + "parameters": { + "id": 18892, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18885, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50734:2:5", + "nodeType": "VariableDeclaration", + "scope": 18906, + "src": "50729:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18884, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50729:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18887, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50743:2:5", + "nodeType": "VariableDeclaration", + "scope": 18906, + "src": "50738:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18886, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50738:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18889, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50755:2:5", + "nodeType": "VariableDeclaration", + "scope": 18906, + "src": "50747:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50747:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18891, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50767:2:5", + "nodeType": "VariableDeclaration", + "scope": 18906, + "src": "50759:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18890, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50759:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "50728:42:5" + }, + "returnParameters": { + "id": 18893, + "nodeType": "ParameterList", + "parameters": [], + "src": "50785:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18929, + "nodeType": "FunctionDefinition", + "src": "50898:181:5", + "body": { + "id": 18928, + "nodeType": "Block", + "src": "50973:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c737472696e6729", + "id": 18920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51023:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7dd4d0e0c518f4b352fd13daccf87a5d9bed9e01e109d2cd329f8180d1bf37cf", + "typeString": "literal_string \"log(bool,bool,uint256,string)\"" + }, + "value": "log(bool,bool,uint256,string)" + }, + { + "id": 18921, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18908, + "src": "51056:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18922, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18910, + "src": "51060:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18923, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18912, + "src": "51064:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18924, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18914, + "src": "51068:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7dd4d0e0c518f4b352fd13daccf87a5d9bed9e01e109d2cd329f8180d1bf37cf", + "typeString": "literal_string \"log(bool,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 18918, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "50999:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18919, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "50999:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18925, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50999:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18917, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "50983:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "50983:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18927, + "nodeType": "ExpressionStatement", + "src": "50983:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "50907:3:5", + "parameters": { + "id": 18915, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18908, + "mutability": "mutable", + "name": "p0", + "nameLocation": "50916:2:5", + "nodeType": "VariableDeclaration", + "scope": 18929, + "src": "50911:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18907, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50911:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18910, + "mutability": "mutable", + "name": "p1", + "nameLocation": "50925:2:5", + "nodeType": "VariableDeclaration", + "scope": 18929, + "src": "50920:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18909, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "50920:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18912, + "mutability": "mutable", + "name": "p2", + "nameLocation": "50937:2:5", + "nodeType": "VariableDeclaration", + "scope": 18929, + "src": "50929:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18911, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "50929:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18914, + "mutability": "mutable", + "name": "p3", + "nameLocation": "50955:2:5", + "nodeType": "VariableDeclaration", + "scope": 18929, + "src": "50941:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18913, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "50941:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "50910:48:5" + }, + "returnParameters": { + "id": 18916, + "nodeType": "ParameterList", + "parameters": [], + "src": "50973:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18952, + "nodeType": "FunctionDefinition", + "src": "51085:170:5", + "body": { + "id": 18951, + "nodeType": "Block", + "src": "51151:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c626f6f6c29", + "id": 18943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51201:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_619e4d0eef4ca09035d413eaba6f544cfd6dc9e01c2aeecde070c53237f5a842", + "typeString": "literal_string \"log(bool,bool,uint256,bool)\"" + }, + "value": "log(bool,bool,uint256,bool)" + }, + { + "id": 18944, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18931, + "src": "51232:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18945, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18933, + "src": "51236:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18946, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18935, + "src": "51240:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18947, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18937, + "src": "51244:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_619e4d0eef4ca09035d413eaba6f544cfd6dc9e01c2aeecde070c53237f5a842", + "typeString": "literal_string \"log(bool,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 18941, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51177:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51177:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51177:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18940, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "51161:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51161:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18950, + "nodeType": "ExpressionStatement", + "src": "51161:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51094:3:5", + "parameters": { + "id": 18938, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18931, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51103:2:5", + "nodeType": "VariableDeclaration", + "scope": 18952, + "src": "51098:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18930, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51098:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18933, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51112:2:5", + "nodeType": "VariableDeclaration", + "scope": 18952, + "src": "51107:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18932, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51107:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18935, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51124:2:5", + "nodeType": "VariableDeclaration", + "scope": 18952, + "src": "51116:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18934, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51116:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18937, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51133:2:5", + "nodeType": "VariableDeclaration", + "scope": 18952, + "src": "51128:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18936, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51128:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "51097:39:5" + }, + "returnParameters": { + "id": 18939, + "nodeType": "ParameterList", + "parameters": [], + "src": "51151:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18975, + "nodeType": "FunctionDefinition", + "src": "51261:176:5", + "body": { + "id": 18974, + "nodeType": "Block", + "src": "51330:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c75696e743235362c6164647265737329", + "id": 18966, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51380:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_54a7a9a08e00a28d36d734cc45e318f9adc9ffbfd731cd45d0dc5a2abe2b9ac9", + "typeString": "literal_string \"log(bool,bool,uint256,address)\"" + }, + "value": "log(bool,bool,uint256,address)" + }, + { + "id": 18967, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18954, + "src": "51414:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18968, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18956, + "src": "51418:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18969, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18958, + "src": "51422:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 18970, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18960, + "src": "51426:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_54a7a9a08e00a28d36d734cc45e318f9adc9ffbfd731cd45d0dc5a2abe2b9ac9", + "typeString": "literal_string \"log(bool,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 18964, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51356:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18965, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51356:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51356:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18963, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "51340:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51340:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18973, + "nodeType": "ExpressionStatement", + "src": "51340:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51270:3:5", + "parameters": { + "id": 18961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18954, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51279:2:5", + "nodeType": "VariableDeclaration", + "scope": 18975, + "src": "51274:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18953, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51274:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18956, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51288:2:5", + "nodeType": "VariableDeclaration", + "scope": 18975, + "src": "51283:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18955, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51283:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18958, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51300:2:5", + "nodeType": "VariableDeclaration", + "scope": 18975, + "src": "51292:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18957, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51292:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18960, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51312:2:5", + "nodeType": "VariableDeclaration", + "scope": 18975, + "src": "51304:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 18959, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "51304:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "51273:42:5" + }, + "returnParameters": { + "id": 18962, + "nodeType": "ParameterList", + "parameters": [], + "src": "51330:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 18998, + "nodeType": "FunctionDefinition", + "src": "51443:181:5", + "body": { + "id": 18997, + "nodeType": "Block", + "src": "51518:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c75696e7432353629", + "id": 18989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51568:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e3a9ca2f5717705d404f75ae4eff025addb4f91e02ce7d2b9a424fc7423a8246", + "typeString": "literal_string \"log(bool,bool,string,uint256)\"" + }, + "value": "log(bool,bool,string,uint256)" + }, + { + "id": 18990, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18977, + "src": "51601:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18991, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18979, + "src": "51605:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 18992, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18981, + "src": "51609:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 18993, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 18983, + "src": "51613:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e3a9ca2f5717705d404f75ae4eff025addb4f91e02ce7d2b9a424fc7423a8246", + "typeString": "literal_string \"log(bool,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 18987, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51544:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 18988, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51544:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 18994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51544:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 18986, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "51528:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 18995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51528:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 18996, + "nodeType": "ExpressionStatement", + "src": "51528:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51452:3:5", + "parameters": { + "id": 18984, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 18977, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51461:2:5", + "nodeType": "VariableDeclaration", + "scope": 18998, + "src": "51456:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18976, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51456:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18979, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51470:2:5", + "nodeType": "VariableDeclaration", + "scope": 18998, + "src": "51465:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18978, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51465:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18981, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51488:2:5", + "nodeType": "VariableDeclaration", + "scope": 18998, + "src": "51474:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 18980, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51474:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18983, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51500:2:5", + "nodeType": "VariableDeclaration", + "scope": 18998, + "src": "51492:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 18982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "51492:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "51455:48:5" + }, + "returnParameters": { + "id": 18985, + "nodeType": "ParameterList", + "parameters": [], + "src": "51518:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19021, + "nodeType": "FunctionDefinition", + "src": "51630:186:5", + "body": { + "id": 19020, + "nodeType": "Block", + "src": "51711:105:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c737472696e6729", + "id": 19012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51761:30:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + "value": "log(bool,bool,string,string)" + }, + { + "id": 19013, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19000, + "src": "51793:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19014, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19002, + "src": "51797:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19015, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19004, + "src": "51801:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19016, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19006, + "src": "51805:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d1e87518c98344bc3efd52648f61de340bda51607aec409d641f3467caafaaf", + "typeString": "literal_string \"log(bool,bool,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19010, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51737:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19011, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51737:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19017, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51737:71:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19009, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "51721:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51721:88:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19019, + "nodeType": "ExpressionStatement", + "src": "51721:88:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51639:3:5", + "parameters": { + "id": 19007, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19000, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51648:2:5", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "51643:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 18999, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51643:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19002, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51657:2:5", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "51652:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19001, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51652:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19004, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51675:2:5", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "51661:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19003, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51661:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19006, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51693:2:5", + "nodeType": "VariableDeclaration", + "scope": 19021, + "src": "51679:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19005, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51679:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "51642:54:5" + }, + "returnParameters": { + "id": 19008, + "nodeType": "ParameterList", + "parameters": [], + "src": "51711:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19044, + "nodeType": "FunctionDefinition", + "src": "51822:175:5", + "body": { + "id": 19043, + "nodeType": "Block", + "src": "51894:103:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c626f6f6c29", + "id": 19035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "51944:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + "value": "log(bool,bool,string,bool)" + }, + { + "id": 19036, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19023, + "src": "51974:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19037, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19025, + "src": "51978:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19038, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19027, + "src": "51982:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19039, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19029, + "src": "51986:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b857163a2b7b8273ed53cefa410aa148f1833bdfc22da11e1e2fb89c6e625d02", + "typeString": "literal_string \"log(bool,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19033, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "51920:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19034, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "51920:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19040, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51920:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19032, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "51904:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "51904:86:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19042, + "nodeType": "ExpressionStatement", + "src": "51904:86:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "51831:3:5", + "parameters": { + "id": 19030, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19023, + "mutability": "mutable", + "name": "p0", + "nameLocation": "51840:2:5", + "nodeType": "VariableDeclaration", + "scope": 19044, + "src": "51835:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19022, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51835:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19025, + "mutability": "mutable", + "name": "p1", + "nameLocation": "51849:2:5", + "nodeType": "VariableDeclaration", + "scope": 19044, + "src": "51844:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19024, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51844:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19027, + "mutability": "mutable", + "name": "p2", + "nameLocation": "51867:2:5", + "nodeType": "VariableDeclaration", + "scope": 19044, + "src": "51853:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19026, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "51853:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19029, + "mutability": "mutable", + "name": "p3", + "nameLocation": "51876:2:5", + "nodeType": "VariableDeclaration", + "scope": 19044, + "src": "51871:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19028, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "51871:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "51834:45:5" + }, + "returnParameters": { + "id": 19031, + "nodeType": "ParameterList", + "parameters": [], + "src": "51894:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19067, + "nodeType": "FunctionDefinition", + "src": "52003:181:5", + "body": { + "id": 19066, + "nodeType": "Block", + "src": "52078:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c737472696e672c6164647265737329", + "id": 19058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52128:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + "value": "log(bool,bool,string,address)" + }, + { + "id": 19059, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19046, + "src": "52161:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19060, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19048, + "src": "52165:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19061, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19050, + "src": "52169:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19062, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19052, + "src": "52173:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f9ad2b893873fa31c02b102aa30743b2e44c102daa588ea9d1eb1f2baf23d202", + "typeString": "literal_string \"log(bool,bool,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19056, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52104:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19057, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52104:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52104:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19055, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52088:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52088:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19065, + "nodeType": "ExpressionStatement", + "src": "52088:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52012:3:5", + "parameters": { + "id": 19053, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19046, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52021:2:5", + "nodeType": "VariableDeclaration", + "scope": 19067, + "src": "52016:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19045, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52016:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19048, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52030:2:5", + "nodeType": "VariableDeclaration", + "scope": 19067, + "src": "52025:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19047, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52025:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19050, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52048:2:5", + "nodeType": "VariableDeclaration", + "scope": 19067, + "src": "52034:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19049, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52034:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19052, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52060:2:5", + "nodeType": "VariableDeclaration", + "scope": 19067, + "src": "52052:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19051, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52052:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52015:48:5" + }, + "returnParameters": { + "id": 19054, + "nodeType": "ParameterList", + "parameters": [], + "src": "52078:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19090, + "nodeType": "FunctionDefinition", + "src": "52190:170:5", + "body": { + "id": 19089, + "nodeType": "Block", + "src": "52256:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 19081, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52306:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d7045c1b7eb7ef78b5ae54b2426a16952d89f674f6d689a4e37aa73bc076a7c", + "typeString": "literal_string \"log(bool,bool,bool,uint256)\"" + }, + "value": "log(bool,bool,bool,uint256)" + }, + { + "id": 19082, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19069, + "src": "52337:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19083, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19071, + "src": "52341:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19084, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19073, + "src": "52345:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19085, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19075, + "src": "52349:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d7045c1b7eb7ef78b5ae54b2426a16952d89f674f6d689a4e37aa73bc076a7c", + "typeString": "literal_string \"log(bool,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19079, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52282:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52282:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52282:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19078, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52266:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52266:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19088, + "nodeType": "ExpressionStatement", + "src": "52266:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52199:3:5", + "parameters": { + "id": 19076, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19069, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52208:2:5", + "nodeType": "VariableDeclaration", + "scope": 19090, + "src": "52203:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19068, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52203:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19071, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52217:2:5", + "nodeType": "VariableDeclaration", + "scope": 19090, + "src": "52212:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19070, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52212:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19073, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52226:2:5", + "nodeType": "VariableDeclaration", + "scope": 19090, + "src": "52221:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19072, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52221:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19075, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52238:2:5", + "nodeType": "VariableDeclaration", + "scope": 19090, + "src": "52230:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19074, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "52230:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "52202:39:5" + }, + "returnParameters": { + "id": 19077, + "nodeType": "ParameterList", + "parameters": [], + "src": "52256:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19113, + "nodeType": "FunctionDefinition", + "src": "52366:175:5", + "body": { + "id": 19112, + "nodeType": "Block", + "src": "52438:103:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c737472696e6729", + "id": 19104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52488:28:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + "value": "log(bool,bool,bool,string)" + }, + { + "id": 19105, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19092, + "src": "52518:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19106, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19094, + "src": "52522:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19107, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19096, + "src": "52526:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19108, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19098, + "src": "52530:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2ae408d4d030305a0361ad07c397f2b9653613b220d82459c7aeb9a6bab96c15", + "typeString": "literal_string \"log(bool,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19102, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52464:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52464:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52464:69:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19101, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52448:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19110, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52448:86:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19111, + "nodeType": "ExpressionStatement", + "src": "52448:86:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52375:3:5", + "parameters": { + "id": 19099, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19092, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52384:2:5", + "nodeType": "VariableDeclaration", + "scope": 19113, + "src": "52379:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19091, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52379:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19094, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52393:2:5", + "nodeType": "VariableDeclaration", + "scope": 19113, + "src": "52388:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19093, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52388:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19096, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52402:2:5", + "nodeType": "VariableDeclaration", + "scope": 19113, + "src": "52397:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19095, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52397:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19098, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52420:2:5", + "nodeType": "VariableDeclaration", + "scope": 19113, + "src": "52406:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19097, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "52406:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "52378:45:5" + }, + "returnParameters": { + "id": 19100, + "nodeType": "ParameterList", + "parameters": [], + "src": "52438:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19136, + "nodeType": "FunctionDefinition", + "src": "52547:164:5", + "body": { + "id": 19135, + "nodeType": "Block", + "src": "52610:101:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 19127, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52660:26:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + "value": "log(bool,bool,bool,bool)" + }, + { + "id": 19128, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19115, + "src": "52688:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19129, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19117, + "src": "52692:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19130, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19119, + "src": "52696:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19131, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19121, + "src": "52700:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3b2a5ce0ddf7b166153a4354c81efba12a817983a38c6bc3b58fd91ce816d99f", + "typeString": "literal_string \"log(bool,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19125, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52636:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19126, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52636:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19132, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52636:67:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19124, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52620:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52620:84:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19134, + "nodeType": "ExpressionStatement", + "src": "52620:84:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52556:3:5", + "parameters": { + "id": 19122, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19115, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52565:2:5", + "nodeType": "VariableDeclaration", + "scope": 19136, + "src": "52560:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19114, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52560:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19117, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52574:2:5", + "nodeType": "VariableDeclaration", + "scope": 19136, + "src": "52569:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19116, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52569:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19119, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52583:2:5", + "nodeType": "VariableDeclaration", + "scope": 19136, + "src": "52578:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19118, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52578:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19121, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52592:2:5", + "nodeType": "VariableDeclaration", + "scope": 19136, + "src": "52587:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19120, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52587:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "52559:36:5" + }, + "returnParameters": { + "id": 19123, + "nodeType": "ParameterList", + "parameters": [], + "src": "52610:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19159, + "nodeType": "FunctionDefinition", + "src": "52717:170:5", + "body": { + "id": 19158, + "nodeType": "Block", + "src": "52783:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c626f6f6c2c6164647265737329", + "id": 19150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "52833:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + "value": "log(bool,bool,bool,address)" + }, + { + "id": 19151, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19138, + "src": "52864:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19152, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19140, + "src": "52868:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19153, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19142, + "src": "52872:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19154, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19144, + "src": "52876:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c329b1a1752dedfc6b781d23096b49b7f905d62405e6e3f0ab0344786ff69f4", + "typeString": "literal_string \"log(bool,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19148, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52809:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52809:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19155, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52809:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19147, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52793:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52793:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19157, + "nodeType": "ExpressionStatement", + "src": "52793:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52726:3:5", + "parameters": { + "id": 19145, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19138, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52735:2:5", + "nodeType": "VariableDeclaration", + "scope": 19159, + "src": "52730:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19137, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52730:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19140, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52744:2:5", + "nodeType": "VariableDeclaration", + "scope": 19159, + "src": "52739:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19139, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52739:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19142, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52753:2:5", + "nodeType": "VariableDeclaration", + "scope": 19159, + "src": "52748:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19141, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52748:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19144, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52765:2:5", + "nodeType": "VariableDeclaration", + "scope": 19159, + "src": "52757:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19143, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52757:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "52729:39:5" + }, + "returnParameters": { + "id": 19146, + "nodeType": "ParameterList", + "parameters": [], + "src": "52783:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19182, + "nodeType": "FunctionDefinition", + "src": "52893:176:5", + "body": { + "id": 19181, + "nodeType": "Block", + "src": "52962:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c75696e7432353629", + "id": 19173, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53012:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4c123d5798ed03bd59911522da9ad7b1fc4e62f5a5de1c95ef20dc3897657cf1", + "typeString": "literal_string \"log(bool,bool,address,uint256)\"" + }, + "value": "log(bool,bool,address,uint256)" + }, + { + "id": 19174, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19161, + "src": "53046:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19175, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19163, + "src": "53050:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19176, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19165, + "src": "53054:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19177, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19167, + "src": "53058:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4c123d5798ed03bd59911522da9ad7b1fc4e62f5a5de1c95ef20dc3897657cf1", + "typeString": "literal_string \"log(bool,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19171, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "52988:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "52988:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19178, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52988:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19170, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "52972:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "52972:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19180, + "nodeType": "ExpressionStatement", + "src": "52972:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "52902:3:5", + "parameters": { + "id": 19168, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19161, + "mutability": "mutable", + "name": "p0", + "nameLocation": "52911:2:5", + "nodeType": "VariableDeclaration", + "scope": 19182, + "src": "52906:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19160, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52906:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19163, + "mutability": "mutable", + "name": "p1", + "nameLocation": "52920:2:5", + "nodeType": "VariableDeclaration", + "scope": 19182, + "src": "52915:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19162, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "52915:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19165, + "mutability": "mutable", + "name": "p2", + "nameLocation": "52932:2:5", + "nodeType": "VariableDeclaration", + "scope": 19182, + "src": "52924:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "52924:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19167, + "mutability": "mutable", + "name": "p3", + "nameLocation": "52944:2:5", + "nodeType": "VariableDeclaration", + "scope": 19182, + "src": "52936:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "52936:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "52905:42:5" + }, + "returnParameters": { + "id": 19169, + "nodeType": "ParameterList", + "parameters": [], + "src": "52962:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19205, + "nodeType": "FunctionDefinition", + "src": "53075:181:5", + "body": { + "id": 19204, + "nodeType": "Block", + "src": "53150:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c737472696e6729", + "id": 19196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53200:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + "value": "log(bool,bool,address,string)" + }, + { + "id": 19197, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19184, + "src": "53233:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19198, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19186, + "src": "53237:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19199, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19188, + "src": "53241:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19200, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19190, + "src": "53245:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a0a479635c05dee438b610769de0f667f2e93ee267e4cd4badf3dd44eb6271d2", + "typeString": "literal_string \"log(bool,bool,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19194, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53176:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53176:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53176:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19193, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "53160:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19202, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53160:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19203, + "nodeType": "ExpressionStatement", + "src": "53160:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53084:3:5", + "parameters": { + "id": 19191, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19184, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53093:2:5", + "nodeType": "VariableDeclaration", + "scope": 19205, + "src": "53088:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19183, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53088:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19186, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53102:2:5", + "nodeType": "VariableDeclaration", + "scope": 19205, + "src": "53097:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19185, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53097:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19188, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53114:2:5", + "nodeType": "VariableDeclaration", + "scope": 19205, + "src": "53106:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53106:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19190, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53132:2:5", + "nodeType": "VariableDeclaration", + "scope": 19205, + "src": "53118:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19189, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "53118:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "53087:48:5" + }, + "returnParameters": { + "id": 19192, + "nodeType": "ParameterList", + "parameters": [], + "src": "53150:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19228, + "nodeType": "FunctionDefinition", + "src": "53262:170:5", + "body": { + "id": 19227, + "nodeType": "Block", + "src": "53328:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c626f6f6c29", + "id": 19219, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53378:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + "value": "log(bool,bool,address,bool)" + }, + { + "id": 19220, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19207, + "src": "53409:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19221, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19209, + "src": "53413:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19222, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19211, + "src": "53417:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19223, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19213, + "src": "53421:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c0a302d8f11e8919127c20f396068f7014b94967efb042778db9b27b68ee1eaf", + "typeString": "literal_string \"log(bool,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19217, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53354:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19218, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53354:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19224, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53354:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19216, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "53338:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19225, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53338:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19226, + "nodeType": "ExpressionStatement", + "src": "53338:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53271:3:5", + "parameters": { + "id": 19214, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19207, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53280:2:5", + "nodeType": "VariableDeclaration", + "scope": 19228, + "src": "53275:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19206, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53275:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19209, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53289:2:5", + "nodeType": "VariableDeclaration", + "scope": 19228, + "src": "53284:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19208, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53284:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19211, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53301:2:5", + "nodeType": "VariableDeclaration", + "scope": 19228, + "src": "53293:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19210, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53293:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19213, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53310:2:5", + "nodeType": "VariableDeclaration", + "scope": 19228, + "src": "53305:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19212, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53305:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "53274:39:5" + }, + "returnParameters": { + "id": 19215, + "nodeType": "ParameterList", + "parameters": [], + "src": "53328:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19251, + "nodeType": "FunctionDefinition", + "src": "53438:176:5", + "body": { + "id": 19250, + "nodeType": "Block", + "src": "53507:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c626f6f6c2c616464726573732c6164647265737329", + "id": 19242, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53557:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + "value": "log(bool,bool,address,address)" + }, + { + "id": 19243, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19230, + "src": "53591:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19244, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19232, + "src": "53595:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19245, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19234, + "src": "53599:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19246, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19236, + "src": "53603:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f4880ea4063b4f7e3c68468bb4a7a3f1502aa7497bce4fb0ba02ec0450f047f4", + "typeString": "literal_string \"log(bool,bool,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19240, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53533:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19241, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53533:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19247, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53533:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19239, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "53517:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53517:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19249, + "nodeType": "ExpressionStatement", + "src": "53517:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53447:3:5", + "parameters": { + "id": 19237, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19230, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53456:2:5", + "nodeType": "VariableDeclaration", + "scope": 19251, + "src": "53451:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19229, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53451:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19232, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53465:2:5", + "nodeType": "VariableDeclaration", + "scope": 19251, + "src": "53460:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19231, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53460:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19234, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53477:2:5", + "nodeType": "VariableDeclaration", + "scope": 19251, + "src": "53469:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19233, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53469:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19236, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53489:2:5", + "nodeType": "VariableDeclaration", + "scope": 19251, + "src": "53481:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19235, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53481:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "53450:42:5" + }, + "returnParameters": { + "id": 19238, + "nodeType": "ParameterList", + "parameters": [], + "src": "53507:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19274, + "nodeType": "FunctionDefinition", + "src": "53620:182:5", + "body": { + "id": 19273, + "nodeType": "Block", + "src": "53692:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c75696e7432353629", + "id": 19265, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53742:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_7bf181a13b51d775e7d4339fb4fee9749d9226fa1720a2ae5e3183ab5674d16e", + "typeString": "literal_string \"log(bool,address,uint256,uint256)\"" + }, + "value": "log(bool,address,uint256,uint256)" + }, + { + "id": 19266, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19253, + "src": "53779:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19267, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19255, + "src": "53783:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19268, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19257, + "src": "53787:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19269, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19259, + "src": "53791:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_7bf181a13b51d775e7d4339fb4fee9749d9226fa1720a2ae5e3183ab5674d16e", + "typeString": "literal_string \"log(bool,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19263, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53718:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53718:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53718:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19262, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "53702:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19271, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53702:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19272, + "nodeType": "ExpressionStatement", + "src": "53702:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53629:3:5", + "parameters": { + "id": 19260, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19253, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53638:2:5", + "nodeType": "VariableDeclaration", + "scope": 19274, + "src": "53633:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19252, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53633:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19255, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53650:2:5", + "nodeType": "VariableDeclaration", + "scope": 19274, + "src": "53642:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19254, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53642:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19257, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53662:2:5", + "nodeType": "VariableDeclaration", + "scope": 19274, + "src": "53654:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19256, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53654:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19259, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53674:2:5", + "nodeType": "VariableDeclaration", + "scope": 19274, + "src": "53666:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19258, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53666:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "53632:45:5" + }, + "returnParameters": { + "id": 19261, + "nodeType": "ParameterList", + "parameters": [], + "src": "53692:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19297, + "nodeType": "FunctionDefinition", + "src": "53808:187:5", + "body": { + "id": 19296, + "nodeType": "Block", + "src": "53886:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c737472696e6729", + "id": 19288, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "53936:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51f09ff8d49d8535177ce9f46f86e22d6e0ebf6aab24e3ad1fe351dec9cb8af7", + "typeString": "literal_string \"log(bool,address,uint256,string)\"" + }, + "value": "log(bool,address,uint256,string)" + }, + { + "id": 19289, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19276, + "src": "53972:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19290, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19278, + "src": "53976:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19291, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19280, + "src": "53980:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19292, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19282, + "src": "53984:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51f09ff8d49d8535177ce9f46f86e22d6e0ebf6aab24e3ad1fe351dec9cb8af7", + "typeString": "literal_string \"log(bool,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19286, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "53912:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19287, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "53912:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53912:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19285, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "53896:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "53896:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19295, + "nodeType": "ExpressionStatement", + "src": "53896:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "53817:3:5", + "parameters": { + "id": 19283, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19276, + "mutability": "mutable", + "name": "p0", + "nameLocation": "53826:2:5", + "nodeType": "VariableDeclaration", + "scope": 19297, + "src": "53821:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19275, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "53821:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19278, + "mutability": "mutable", + "name": "p1", + "nameLocation": "53838:2:5", + "nodeType": "VariableDeclaration", + "scope": 19297, + "src": "53830:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19277, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "53830:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19280, + "mutability": "mutable", + "name": "p2", + "nameLocation": "53850:2:5", + "nodeType": "VariableDeclaration", + "scope": 19297, + "src": "53842:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19279, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "53842:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19282, + "mutability": "mutable", + "name": "p3", + "nameLocation": "53868:2:5", + "nodeType": "VariableDeclaration", + "scope": 19297, + "src": "53854:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19281, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "53854:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "53820:51:5" + }, + "returnParameters": { + "id": 19284, + "nodeType": "ParameterList", + "parameters": [], + "src": "53886:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19320, + "nodeType": "FunctionDefinition", + "src": "54001:176:5", + "body": { + "id": 19319, + "nodeType": "Block", + "src": "54070:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c626f6f6c29", + "id": 19311, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54120:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d6019f1c844577cb799272d8b580ae7d31e1d26be8513d99f3a91ca8ea67c958", + "typeString": "literal_string \"log(bool,address,uint256,bool)\"" + }, + "value": "log(bool,address,uint256,bool)" + }, + { + "id": 19312, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19299, + "src": "54154:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19313, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19301, + "src": "54158:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19314, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19303, + "src": "54162:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19315, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19305, + "src": "54166:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d6019f1c844577cb799272d8b580ae7d31e1d26be8513d99f3a91ca8ea67c958", + "typeString": "literal_string \"log(bool,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19309, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54096:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54096:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54096:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19308, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "54080:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54080:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19318, + "nodeType": "ExpressionStatement", + "src": "54080:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54010:3:5", + "parameters": { + "id": 19306, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19299, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54019:2:5", + "nodeType": "VariableDeclaration", + "scope": 19320, + "src": "54014:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19298, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54014:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19301, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54031:2:5", + "nodeType": "VariableDeclaration", + "scope": 19320, + "src": "54023:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19300, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54023:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19303, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54043:2:5", + "nodeType": "VariableDeclaration", + "scope": 19320, + "src": "54035:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19302, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54035:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19305, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54052:2:5", + "nodeType": "VariableDeclaration", + "scope": 19320, + "src": "54047:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19304, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54047:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54013:42:5" + }, + "returnParameters": { + "id": 19307, + "nodeType": "ParameterList", + "parameters": [], + "src": "54070:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19343, + "nodeType": "FunctionDefinition", + "src": "54183:182:5", + "body": { + "id": 19342, + "nodeType": "Block", + "src": "54255:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c75696e743235362c6164647265737329", + "id": 19334, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54305:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_136b05dd56dbfa6e97805ce657954968bb4ea366eef252c9fa3aec31b1aa7ebd", + "typeString": "literal_string \"log(bool,address,uint256,address)\"" + }, + "value": "log(bool,address,uint256,address)" + }, + { + "id": 19335, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19322, + "src": "54342:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19336, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19324, + "src": "54346:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19337, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19326, + "src": "54350:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19338, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19328, + "src": "54354:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_136b05dd56dbfa6e97805ce657954968bb4ea366eef252c9fa3aec31b1aa7ebd", + "typeString": "literal_string \"log(bool,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19332, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54281:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54281:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19339, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54281:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19331, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "54265:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54265:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19341, + "nodeType": "ExpressionStatement", + "src": "54265:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54192:3:5", + "parameters": { + "id": 19329, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19322, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54201:2:5", + "nodeType": "VariableDeclaration", + "scope": 19343, + "src": "54196:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19321, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54196:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19324, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54213:2:5", + "nodeType": "VariableDeclaration", + "scope": 19343, + "src": "54205:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19323, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54205:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19326, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54225:2:5", + "nodeType": "VariableDeclaration", + "scope": 19343, + "src": "54217:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19325, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54217:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19328, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54237:2:5", + "nodeType": "VariableDeclaration", + "scope": 19343, + "src": "54229:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19327, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54229:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "54195:45:5" + }, + "returnParameters": { + "id": 19330, + "nodeType": "ParameterList", + "parameters": [], + "src": "54255:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19366, + "nodeType": "FunctionDefinition", + "src": "54371:187:5", + "body": { + "id": 19365, + "nodeType": "Block", + "src": "54449:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c75696e7432353629", + "id": 19357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54499:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c21f64c781c24c69fbdf6daf185e821c3143831e9c7b3ede1933a6cffd68030d", + "typeString": "literal_string \"log(bool,address,string,uint256)\"" + }, + "value": "log(bool,address,string,uint256)" + }, + { + "id": 19358, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19345, + "src": "54535:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19359, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19347, + "src": "54539:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19360, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19349, + "src": "54543:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19361, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19351, + "src": "54547:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c21f64c781c24c69fbdf6daf185e821c3143831e9c7b3ede1933a6cffd68030d", + "typeString": "literal_string \"log(bool,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19355, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54475:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54475:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54475:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19354, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "54459:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54459:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19364, + "nodeType": "ExpressionStatement", + "src": "54459:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54380:3:5", + "parameters": { + "id": 19352, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19345, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54389:2:5", + "nodeType": "VariableDeclaration", + "scope": 19366, + "src": "54384:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19344, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54384:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19347, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54401:2:5", + "nodeType": "VariableDeclaration", + "scope": 19366, + "src": "54393:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19346, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54393:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19349, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54419:2:5", + "nodeType": "VariableDeclaration", + "scope": 19366, + "src": "54405:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19348, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54405:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19351, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54431:2:5", + "nodeType": "VariableDeclaration", + "scope": 19366, + "src": "54423:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19350, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "54423:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "54383:51:5" + }, + "returnParameters": { + "id": 19353, + "nodeType": "ParameterList", + "parameters": [], + "src": "54449:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19389, + "nodeType": "FunctionDefinition", + "src": "54564:192:5", + "body": { + "id": 19388, + "nodeType": "Block", + "src": "54648:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c737472696e6729", + "id": 19380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54698:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + "value": "log(bool,address,string,string)" + }, + { + "id": 19381, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19368, + "src": "54733:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19382, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19370, + "src": "54737:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19383, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19372, + "src": "54741:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19384, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19374, + "src": "54745:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a73c1db639dbf1382c9113eacdf5b14a7ccd81fc001ac60393623936011bf49d", + "typeString": "literal_string \"log(bool,address,string,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19378, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54674:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54674:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54674:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19377, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "54658:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54658:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19387, + "nodeType": "ExpressionStatement", + "src": "54658:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54573:3:5", + "parameters": { + "id": 19375, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19368, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54582:2:5", + "nodeType": "VariableDeclaration", + "scope": 19389, + "src": "54577:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19367, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54577:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19370, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54594:2:5", + "nodeType": "VariableDeclaration", + "scope": 19389, + "src": "54586:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19369, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54586:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19372, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54612:2:5", + "nodeType": "VariableDeclaration", + "scope": 19389, + "src": "54598:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19371, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54598:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19374, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54630:2:5", + "nodeType": "VariableDeclaration", + "scope": 19389, + "src": "54616:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19373, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54616:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "54576:57:5" + }, + "returnParameters": { + "id": 19376, + "nodeType": "ParameterList", + "parameters": [], + "src": "54648:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19412, + "nodeType": "FunctionDefinition", + "src": "54762:181:5", + "body": { + "id": 19411, + "nodeType": "Block", + "src": "54837:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c626f6f6c29", + "id": 19403, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "54887:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + "value": "log(bool,address,string,bool)" + }, + { + "id": 19404, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19391, + "src": "54920:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19405, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19393, + "src": "54924:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19406, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19395, + "src": "54928:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19407, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19397, + "src": "54932:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e2bfd60b4f6acdab0603dda631b69bf37ab7cbf71bc5953f9ed72c1f2a76f7dc", + "typeString": "literal_string \"log(bool,address,string,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19401, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "54863:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19402, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "54863:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54863:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19400, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "54847:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "54847:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19410, + "nodeType": "ExpressionStatement", + "src": "54847:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54771:3:5", + "parameters": { + "id": 19398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19391, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54780:2:5", + "nodeType": "VariableDeclaration", + "scope": 19412, + "src": "54775:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19390, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54775:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19393, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54792:2:5", + "nodeType": "VariableDeclaration", + "scope": 19412, + "src": "54784:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19392, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54784:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19395, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54810:2:5", + "nodeType": "VariableDeclaration", + "scope": 19412, + "src": "54796:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19394, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54796:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19397, + "mutability": "mutable", + "name": "p3", + "nameLocation": "54819:2:5", + "nodeType": "VariableDeclaration", + "scope": 19412, + "src": "54814:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54814:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "54774:48:5" + }, + "returnParameters": { + "id": 19399, + "nodeType": "ParameterList", + "parameters": [], + "src": "54837:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19435, + "nodeType": "FunctionDefinition", + "src": "54949:187:5", + "body": { + "id": 19434, + "nodeType": "Block", + "src": "55027:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c737472696e672c6164647265737329", + "id": 19426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55077:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + "value": "log(bool,address,string,address)" + }, + { + "id": 19427, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19414, + "src": "55113:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19428, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19416, + "src": "55117:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19429, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19418, + "src": "55121:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19430, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19420, + "src": "55125:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f7c603e9035cbc7959bb3d44ec862ddc6711eecebd67d54ceb0010f42f85654", + "typeString": "literal_string \"log(bool,address,string,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19424, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55053:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19425, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55053:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55053:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19423, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55037:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55037:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19433, + "nodeType": "ExpressionStatement", + "src": "55037:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "54958:3:5", + "parameters": { + "id": 19421, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19414, + "mutability": "mutable", + "name": "p0", + "nameLocation": "54967:2:5", + "nodeType": "VariableDeclaration", + "scope": 19435, + "src": "54962:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19413, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "54962:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19416, + "mutability": "mutable", + "name": "p1", + "nameLocation": "54979:2:5", + "nodeType": "VariableDeclaration", + "scope": 19435, + "src": "54971:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19415, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "54971:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19418, + "mutability": "mutable", + "name": "p2", + "nameLocation": "54997:2:5", + "nodeType": "VariableDeclaration", + "scope": 19435, + "src": "54983:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19417, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "54983:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19420, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55009:2:5", + "nodeType": "VariableDeclaration", + "scope": 19435, + "src": "55001:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19419, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55001:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "54961:51:5" + }, + "returnParameters": { + "id": 19422, + "nodeType": "ParameterList", + "parameters": [], + "src": "55027:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19458, + "nodeType": "FunctionDefinition", + "src": "55142:176:5", + "body": { + "id": 19457, + "nodeType": "Block", + "src": "55211:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c75696e7432353629", + "id": 19449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55261:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_07831502b96d5b050adbd4ca2f9d4cd011dd7a8d3e1266dadb6c832ee8e56059", + "typeString": "literal_string \"log(bool,address,bool,uint256)\"" + }, + "value": "log(bool,address,bool,uint256)" + }, + { + "id": 19450, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19437, + "src": "55295:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19451, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19439, + "src": "55299:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19452, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19441, + "src": "55303:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19453, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19443, + "src": "55307:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_07831502b96d5b050adbd4ca2f9d4cd011dd7a8d3e1266dadb6c832ee8e56059", + "typeString": "literal_string \"log(bool,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19447, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55237:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55237:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55237:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19446, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55221:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19455, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55221:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19456, + "nodeType": "ExpressionStatement", + "src": "55221:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55151:3:5", + "parameters": { + "id": 19444, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19437, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55160:2:5", + "nodeType": "VariableDeclaration", + "scope": 19458, + "src": "55155:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19436, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55155:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19439, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55172:2:5", + "nodeType": "VariableDeclaration", + "scope": 19458, + "src": "55164:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19438, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55164:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19441, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55181:2:5", + "nodeType": "VariableDeclaration", + "scope": 19458, + "src": "55176:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19440, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55176:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19443, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55193:2:5", + "nodeType": "VariableDeclaration", + "scope": 19458, + "src": "55185:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19442, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "55185:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "55154:42:5" + }, + "returnParameters": { + "id": 19445, + "nodeType": "ParameterList", + "parameters": [], + "src": "55211:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19481, + "nodeType": "FunctionDefinition", + "src": "55324:181:5", + "body": { + "id": 19480, + "nodeType": "Block", + "src": "55399:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c737472696e6729", + "id": 19472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55449:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + "value": "log(bool,address,bool,string)" + }, + { + "id": 19473, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19460, + "src": "55482:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19474, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19462, + "src": "55486:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19475, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19464, + "src": "55490:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19476, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19466, + "src": "55494:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a66cb34796065525d301a5b87b440b55f1936e34dd66e2f2039307bc4e3ea59", + "typeString": "literal_string \"log(bool,address,bool,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19470, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55425:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19471, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55425:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19477, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55425:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19469, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55409:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55409:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19479, + "nodeType": "ExpressionStatement", + "src": "55409:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55333:3:5", + "parameters": { + "id": 19467, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19460, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55342:2:5", + "nodeType": "VariableDeclaration", + "scope": 19481, + "src": "55337:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19459, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55337:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19462, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55354:2:5", + "nodeType": "VariableDeclaration", + "scope": 19481, + "src": "55346:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19461, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55346:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19464, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55363:2:5", + "nodeType": "VariableDeclaration", + "scope": 19481, + "src": "55358:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19463, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55358:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19466, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55381:2:5", + "nodeType": "VariableDeclaration", + "scope": 19481, + "src": "55367:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19465, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "55367:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "55336:48:5" + }, + "returnParameters": { + "id": 19468, + "nodeType": "ParameterList", + "parameters": [], + "src": "55399:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19504, + "nodeType": "FunctionDefinition", + "src": "55511:170:5", + "body": { + "id": 19503, + "nodeType": "Block", + "src": "55577:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c626f6f6c29", + "id": 19495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55627:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + "value": "log(bool,address,bool,bool)" + }, + { + "id": 19496, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19483, + "src": "55658:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19497, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19485, + "src": "55662:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19498, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19487, + "src": "55666:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19499, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19489, + "src": "55670:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6a9c478bc98300d44308882e2e0b5864f2536a2939cb77105f503738b5832577", + "typeString": "literal_string \"log(bool,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19493, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55603:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19494, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55603:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19500, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55603:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19492, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55587:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55587:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19502, + "nodeType": "ExpressionStatement", + "src": "55587:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55520:3:5", + "parameters": { + "id": 19490, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19483, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55529:2:5", + "nodeType": "VariableDeclaration", + "scope": 19504, + "src": "55524:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19482, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55524:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19485, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55541:2:5", + "nodeType": "VariableDeclaration", + "scope": 19504, + "src": "55533:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19484, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55533:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19487, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55550:2:5", + "nodeType": "VariableDeclaration", + "scope": 19504, + "src": "55545:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19486, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55545:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19489, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55559:2:5", + "nodeType": "VariableDeclaration", + "scope": 19504, + "src": "55554:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19488, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55554:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "55523:39:5" + }, + "returnParameters": { + "id": 19491, + "nodeType": "ParameterList", + "parameters": [], + "src": "55577:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19527, + "nodeType": "FunctionDefinition", + "src": "55687:176:5", + "body": { + "id": 19526, + "nodeType": "Block", + "src": "55756:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c626f6f6c2c6164647265737329", + "id": 19518, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55806:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + "value": "log(bool,address,bool,address)" + }, + { + "id": 19519, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19506, + "src": "55840:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19520, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19508, + "src": "55844:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19521, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19510, + "src": "55848:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19522, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19512, + "src": "55852:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1c41a336759f1c2fe1d8b137296b2dfbdcfe7114fc53f203852c2835c09f8870", + "typeString": "literal_string \"log(bool,address,bool,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19516, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55782:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19517, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55782:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55782:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19515, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55766:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19524, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55766:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19525, + "nodeType": "ExpressionStatement", + "src": "55766:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55696:3:5", + "parameters": { + "id": 19513, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19506, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55705:2:5", + "nodeType": "VariableDeclaration", + "scope": 19527, + "src": "55700:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19505, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55700:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19508, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55717:2:5", + "nodeType": "VariableDeclaration", + "scope": 19527, + "src": "55709:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19507, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55709:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19510, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55726:2:5", + "nodeType": "VariableDeclaration", + "scope": 19527, + "src": "55721:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19509, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55721:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19512, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55738:2:5", + "nodeType": "VariableDeclaration", + "scope": 19527, + "src": "55730:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19511, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55730:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "55699:42:5" + }, + "returnParameters": { + "id": 19514, + "nodeType": "ParameterList", + "parameters": [], + "src": "55756:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19550, + "nodeType": "FunctionDefinition", + "src": "55869:182:5", + "body": { + "id": 19549, + "nodeType": "Block", + "src": "55941:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c75696e7432353629", + "id": 19541, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "55991:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c66d1be8b80b8d96088c57d6fc12897f737822d5beb6e751a923520a0a509b8", + "typeString": "literal_string \"log(bool,address,address,uint256)\"" + }, + "value": "log(bool,address,address,uint256)" + }, + { + "id": 19542, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19529, + "src": "56028:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19543, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19531, + "src": "56032:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19544, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19533, + "src": "56036:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19545, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19535, + "src": "56040:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c66d1be8b80b8d96088c57d6fc12897f737822d5beb6e751a923520a0a509b8", + "typeString": "literal_string \"log(bool,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19539, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "55967:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19540, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "55967:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19546, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55967:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19538, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "55951:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "55951:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19548, + "nodeType": "ExpressionStatement", + "src": "55951:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "55878:3:5", + "parameters": { + "id": 19536, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19529, + "mutability": "mutable", + "name": "p0", + "nameLocation": "55887:2:5", + "nodeType": "VariableDeclaration", + "scope": 19550, + "src": "55882:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19528, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "55882:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19531, + "mutability": "mutable", + "name": "p1", + "nameLocation": "55899:2:5", + "nodeType": "VariableDeclaration", + "scope": 19550, + "src": "55891:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19530, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55891:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19533, + "mutability": "mutable", + "name": "p2", + "nameLocation": "55911:2:5", + "nodeType": "VariableDeclaration", + "scope": 19550, + "src": "55903:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19532, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "55903:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19535, + "mutability": "mutable", + "name": "p3", + "nameLocation": "55923:2:5", + "nodeType": "VariableDeclaration", + "scope": 19550, + "src": "55915:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19534, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "55915:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "55881:45:5" + }, + "returnParameters": { + "id": 19537, + "nodeType": "ParameterList", + "parameters": [], + "src": "55941:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19573, + "nodeType": "FunctionDefinition", + "src": "56057:187:5", + "body": { + "id": 19572, + "nodeType": "Block", + "src": "56135:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c737472696e6729", + "id": 19564, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56185:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + "value": "log(bool,address,address,string)" + }, + { + "id": 19565, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19552, + "src": "56221:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19566, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19554, + "src": "56225:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19567, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19556, + "src": "56229:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19568, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19558, + "src": "56233:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d812a167fb7ec8cf55a11f06ff411238f0a431de331592d8a735c8c8481f7432", + "typeString": "literal_string \"log(bool,address,address,string)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19562, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56161:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19563, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56161:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19569, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56161:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19561, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "56145:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56145:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19571, + "nodeType": "ExpressionStatement", + "src": "56145:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56066:3:5", + "parameters": { + "id": 19559, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19552, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56075:2:5", + "nodeType": "VariableDeclaration", + "scope": 19573, + "src": "56070:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19551, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56070:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19554, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56087:2:5", + "nodeType": "VariableDeclaration", + "scope": 19573, + "src": "56079:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19553, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56079:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19556, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56099:2:5", + "nodeType": "VariableDeclaration", + "scope": 19573, + "src": "56091:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19555, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56091:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19558, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56117:2:5", + "nodeType": "VariableDeclaration", + "scope": 19573, + "src": "56103:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19557, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "56103:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "56069:51:5" + }, + "returnParameters": { + "id": 19560, + "nodeType": "ParameterList", + "parameters": [], + "src": "56135:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19596, + "nodeType": "FunctionDefinition", + "src": "56250:176:5", + "body": { + "id": 19595, + "nodeType": "Block", + "src": "56319:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c626f6f6c29", + "id": 19587, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56369:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + "value": "log(bool,address,address,bool)" + }, + { + "id": 19588, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19575, + "src": "56403:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19589, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19577, + "src": "56407:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19590, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19579, + "src": "56411:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19591, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19581, + "src": "56415:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_46600be071bbf2a7e3a3cb4fd0e6efe39e86453e4c4a27c400470867be7afd9e", + "typeString": "literal_string \"log(bool,address,address,bool)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19585, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56345:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19586, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56345:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56345:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19584, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "56329:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56329:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19594, + "nodeType": "ExpressionStatement", + "src": "56329:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56259:3:5", + "parameters": { + "id": 19582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19575, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56268:2:5", + "nodeType": "VariableDeclaration", + "scope": 19596, + "src": "56263:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19574, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56263:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19577, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56280:2:5", + "nodeType": "VariableDeclaration", + "scope": 19596, + "src": "56272:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19576, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56272:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19579, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56292:2:5", + "nodeType": "VariableDeclaration", + "scope": 19596, + "src": "56284:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19578, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56284:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19581, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56301:2:5", + "nodeType": "VariableDeclaration", + "scope": 19596, + "src": "56296:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19580, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56296:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "56262:42:5" + }, + "returnParameters": { + "id": 19583, + "nodeType": "ParameterList", + "parameters": [], + "src": "56319:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19619, + "nodeType": "FunctionDefinition", + "src": "56432:182:5", + "body": { + "id": 19618, + "nodeType": "Block", + "src": "56504:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728626f6f6c2c616464726573732c616464726573732c6164647265737329", + "id": 19610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56554:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + "value": "log(bool,address,address,address)" + }, + { + "id": 19611, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19598, + "src": "56591:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19612, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19600, + "src": "56595:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19613, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19602, + "src": "56599:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19614, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19604, + "src": "56603:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1d14d00189540d88098b9fe614aa8c0efbe231c1a0fee05e7d705c0342377123", + "typeString": "literal_string \"log(bool,address,address,address)\"" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19608, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56530:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19609, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56530:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56530:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19607, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "56514:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56514:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19617, + "nodeType": "ExpressionStatement", + "src": "56514:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56441:3:5", + "parameters": { + "id": 19605, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19598, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56450:2:5", + "nodeType": "VariableDeclaration", + "scope": 19619, + "src": "56445:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19597, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "56445:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19600, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56462:2:5", + "nodeType": "VariableDeclaration", + "scope": 19619, + "src": "56454:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19599, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56454:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19602, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56474:2:5", + "nodeType": "VariableDeclaration", + "scope": 19619, + "src": "56466:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19601, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56466:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19604, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56486:2:5", + "nodeType": "VariableDeclaration", + "scope": 19619, + "src": "56478:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56478:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "56444:45:5" + }, + "returnParameters": { + "id": 19606, + "nodeType": "ParameterList", + "parameters": [], + "src": "56504:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19642, + "nodeType": "FunctionDefinition", + "src": "56620:188:5", + "body": { + "id": 19641, + "nodeType": "Block", + "src": "56695:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c75696e7432353629", + "id": 19633, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56745:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_34f0e636808ebabd61ce9b247c78c7a38984ab35d5f29c0bd51299288509f6d6", + "typeString": "literal_string \"log(address,uint256,uint256,uint256)\"" + }, + "value": "log(address,uint256,uint256,uint256)" + }, + { + "id": 19634, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19621, + "src": "56785:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19635, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19623, + "src": "56789:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19636, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19625, + "src": "56793:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19637, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19627, + "src": "56797:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_34f0e636808ebabd61ce9b247c78c7a38984ab35d5f29c0bd51299288509f6d6", + "typeString": "literal_string \"log(address,uint256,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19631, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56721:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19632, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56721:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56721:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19630, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "56705:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19639, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56705:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19640, + "nodeType": "ExpressionStatement", + "src": "56705:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56629:3:5", + "parameters": { + "id": 19628, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19621, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56641:2:5", + "nodeType": "VariableDeclaration", + "scope": 19642, + "src": "56633:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19620, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56633:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19623, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56653:2:5", + "nodeType": "VariableDeclaration", + "scope": 19642, + "src": "56645:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19622, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56645:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19625, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56665:2:5", + "nodeType": "VariableDeclaration", + "scope": 19642, + "src": "56657:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19624, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56657:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19627, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56677:2:5", + "nodeType": "VariableDeclaration", + "scope": 19642, + "src": "56669:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19626, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56669:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "56632:48:5" + }, + "returnParameters": { + "id": 19629, + "nodeType": "ParameterList", + "parameters": [], + "src": "56695:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19665, + "nodeType": "FunctionDefinition", + "src": "56814:193:5", + "body": { + "id": 19664, + "nodeType": "Block", + "src": "56895:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c737472696e6729", + "id": 19656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "56945:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4a28c017e545dc04fb82dd1a46d46ba463e69e0aeff774fbced9bedd205b6cf6", + "typeString": "literal_string \"log(address,uint256,uint256,string)\"" + }, + "value": "log(address,uint256,uint256,string)" + }, + { + "id": 19657, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19644, + "src": "56984:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19658, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19646, + "src": "56988:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19659, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19648, + "src": "56992:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19660, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19650, + "src": "56996:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4a28c017e545dc04fb82dd1a46d46ba463e69e0aeff774fbced9bedd205b6cf6", + "typeString": "literal_string \"log(address,uint256,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19654, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "56921:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19655, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "56921:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56921:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19653, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "56905:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "56905:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19663, + "nodeType": "ExpressionStatement", + "src": "56905:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "56823:3:5", + "parameters": { + "id": 19651, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19644, + "mutability": "mutable", + "name": "p0", + "nameLocation": "56835:2:5", + "nodeType": "VariableDeclaration", + "scope": 19665, + "src": "56827:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19643, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "56827:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19646, + "mutability": "mutable", + "name": "p1", + "nameLocation": "56847:2:5", + "nodeType": "VariableDeclaration", + "scope": 19665, + "src": "56839:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56839:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19648, + "mutability": "mutable", + "name": "p2", + "nameLocation": "56859:2:5", + "nodeType": "VariableDeclaration", + "scope": 19665, + "src": "56851:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19647, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "56851:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19650, + "mutability": "mutable", + "name": "p3", + "nameLocation": "56877:2:5", + "nodeType": "VariableDeclaration", + "scope": 19665, + "src": "56863:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19649, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "56863:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "56826:54:5" + }, + "returnParameters": { + "id": 19652, + "nodeType": "ParameterList", + "parameters": [], + "src": "56895:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19688, + "nodeType": "FunctionDefinition", + "src": "57013:182:5", + "body": { + "id": 19687, + "nodeType": "Block", + "src": "57085:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c626f6f6c29", + "id": 19679, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57135:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_66f1bc67b5cb59260b3541ed684f0a38ab8f590dfff7947bd562de33eae3c57e", + "typeString": "literal_string \"log(address,uint256,uint256,bool)\"" + }, + "value": "log(address,uint256,uint256,bool)" + }, + { + "id": 19680, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19667, + "src": "57172:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19681, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19669, + "src": "57176:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19682, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19671, + "src": "57180:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19683, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19673, + "src": "57184:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_66f1bc67b5cb59260b3541ed684f0a38ab8f590dfff7947bd562de33eae3c57e", + "typeString": "literal_string \"log(address,uint256,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19677, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57111:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57111:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19684, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57111:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19676, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "57095:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57095:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19686, + "nodeType": "ExpressionStatement", + "src": "57095:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57022:3:5", + "parameters": { + "id": 19674, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19667, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57034:2:5", + "nodeType": "VariableDeclaration", + "scope": 19688, + "src": "57026:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19666, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57026:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19669, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57046:2:5", + "nodeType": "VariableDeclaration", + "scope": 19688, + "src": "57038:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19668, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57038:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19671, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57058:2:5", + "nodeType": "VariableDeclaration", + "scope": 19688, + "src": "57050:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57050:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19673, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57067:2:5", + "nodeType": "VariableDeclaration", + "scope": 19688, + "src": "57062:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19672, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "57062:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57025:45:5" + }, + "returnParameters": { + "id": 19675, + "nodeType": "ParameterList", + "parameters": [], + "src": "57085:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19711, + "nodeType": "FunctionDefinition", + "src": "57201:188:5", + "body": { + "id": 19710, + "nodeType": "Block", + "src": "57276:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c75696e743235362c6164647265737329", + "id": 19702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57326:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_20e3984d0b91232a40a479187d959e3fb7102cd2a40a0267e07a4f648290e390", + "typeString": "literal_string \"log(address,uint256,uint256,address)\"" + }, + "value": "log(address,uint256,uint256,address)" + }, + { + "id": 19703, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19690, + "src": "57366:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19704, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19692, + "src": "57370:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19705, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19694, + "src": "57374:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19706, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19696, + "src": "57378:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_20e3984d0b91232a40a479187d959e3fb7102cd2a40a0267e07a4f648290e390", + "typeString": "literal_string \"log(address,uint256,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19700, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57302:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19701, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57302:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57302:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19699, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "57286:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57286:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19709, + "nodeType": "ExpressionStatement", + "src": "57286:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57210:3:5", + "parameters": { + "id": 19697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19690, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57222:2:5", + "nodeType": "VariableDeclaration", + "scope": 19711, + "src": "57214:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19689, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57214:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19692, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57234:2:5", + "nodeType": "VariableDeclaration", + "scope": 19711, + "src": "57226:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19691, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57226:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19694, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57246:2:5", + "nodeType": "VariableDeclaration", + "scope": 19711, + "src": "57238:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19693, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57238:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19696, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57258:2:5", + "nodeType": "VariableDeclaration", + "scope": 19711, + "src": "57250:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19695, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57250:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "57213:48:5" + }, + "returnParameters": { + "id": 19698, + "nodeType": "ParameterList", + "parameters": [], + "src": "57276:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19734, + "nodeType": "FunctionDefinition", + "src": "57395:193:5", + "body": { + "id": 19733, + "nodeType": "Block", + "src": "57476:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c75696e7432353629", + "id": 19725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57526:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bf01f89152073297823dffc184d44302911f7269a4d8bb68457feda7325d0054", + "typeString": "literal_string \"log(address,uint256,string,uint256)\"" + }, + "value": "log(address,uint256,string,uint256)" + }, + { + "id": 19726, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19713, + "src": "57565:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19727, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19715, + "src": "57569:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19728, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19717, + "src": "57573:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19729, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19719, + "src": "57577:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bf01f89152073297823dffc184d44302911f7269a4d8bb68457feda7325d0054", + "typeString": "literal_string \"log(address,uint256,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19723, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57502:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57502:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57502:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19722, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "57486:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57486:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19732, + "nodeType": "ExpressionStatement", + "src": "57486:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57404:3:5", + "parameters": { + "id": 19720, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19713, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57416:2:5", + "nodeType": "VariableDeclaration", + "scope": 19734, + "src": "57408:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19712, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57408:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19715, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57428:2:5", + "nodeType": "VariableDeclaration", + "scope": 19734, + "src": "57420:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19714, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57420:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19717, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57446:2:5", + "nodeType": "VariableDeclaration", + "scope": 19734, + "src": "57432:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19716, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57432:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19719, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57458:2:5", + "nodeType": "VariableDeclaration", + "scope": 19734, + "src": "57450:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19718, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57450:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "57407:54:5" + }, + "returnParameters": { + "id": 19721, + "nodeType": "ParameterList", + "parameters": [], + "src": "57476:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19757, + "nodeType": "FunctionDefinition", + "src": "57594:198:5", + "body": { + "id": 19756, + "nodeType": "Block", + "src": "57681:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c737472696e6729", + "id": 19748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57731:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_88a8c40673ee8948292248925b0e9d44ca87355f3f886942e848cf22ee50e1c9", + "typeString": "literal_string \"log(address,uint256,string,string)\"" + }, + "value": "log(address,uint256,string,string)" + }, + { + "id": 19749, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19736, + "src": "57769:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19750, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19738, + "src": "57773:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19751, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19740, + "src": "57777:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19752, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19742, + "src": "57781:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_88a8c40673ee8948292248925b0e9d44ca87355f3f886942e848cf22ee50e1c9", + "typeString": "literal_string \"log(address,uint256,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19746, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57707:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19747, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57707:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57707:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19745, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "57691:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57691:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19755, + "nodeType": "ExpressionStatement", + "src": "57691:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57603:3:5", + "parameters": { + "id": 19743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19736, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57615:2:5", + "nodeType": "VariableDeclaration", + "scope": 19757, + "src": "57607:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19735, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57607:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19738, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57627:2:5", + "nodeType": "VariableDeclaration", + "scope": 19757, + "src": "57619:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19737, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57619:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19740, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57645:2:5", + "nodeType": "VariableDeclaration", + "scope": 19757, + "src": "57631:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19739, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57631:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19742, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57663:2:5", + "nodeType": "VariableDeclaration", + "scope": 19757, + "src": "57649:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19741, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57649:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "57606:60:5" + }, + "returnParameters": { + "id": 19744, + "nodeType": "ParameterList", + "parameters": [], + "src": "57681:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19780, + "nodeType": "FunctionDefinition", + "src": "57798:187:5", + "body": { + "id": 19779, + "nodeType": "Block", + "src": "57876:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c626f6f6c29", + "id": 19771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "57926:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf18105cbdc058258aaac7d4703aebeff683e464ae87b167f8bcabefd4799184", + "typeString": "literal_string \"log(address,uint256,string,bool)\"" + }, + "value": "log(address,uint256,string,bool)" + }, + { + "id": 19772, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19759, + "src": "57962:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19773, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19761, + "src": "57966:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19774, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19763, + "src": "57970:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19775, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19765, + "src": "57974:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf18105cbdc058258aaac7d4703aebeff683e464ae87b167f8bcabefd4799184", + "typeString": "literal_string \"log(address,uint256,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19769, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "57902:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19770, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "57902:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19776, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57902:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19768, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "57886:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19777, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "57886:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19778, + "nodeType": "ExpressionStatement", + "src": "57886:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "57807:3:5", + "parameters": { + "id": 19766, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19759, + "mutability": "mutable", + "name": "p0", + "nameLocation": "57819:2:5", + "nodeType": "VariableDeclaration", + "scope": 19780, + "src": "57811:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19758, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "57811:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19761, + "mutability": "mutable", + "name": "p1", + "nameLocation": "57831:2:5", + "nodeType": "VariableDeclaration", + "scope": 19780, + "src": "57823:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19760, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "57823:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19763, + "mutability": "mutable", + "name": "p2", + "nameLocation": "57849:2:5", + "nodeType": "VariableDeclaration", + "scope": 19780, + "src": "57835:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19762, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "57835:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19765, + "mutability": "mutable", + "name": "p3", + "nameLocation": "57858:2:5", + "nodeType": "VariableDeclaration", + "scope": 19780, + "src": "57853:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19764, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "57853:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "57810:51:5" + }, + "returnParameters": { + "id": 19767, + "nodeType": "ParameterList", + "parameters": [], + "src": "57876:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19803, + "nodeType": "FunctionDefinition", + "src": "57991:193:5", + "body": { + "id": 19802, + "nodeType": "Block", + "src": "58072:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c737472696e672c6164647265737329", + "id": 19794, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58122:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5c430d475ad8236f34d086a6aae3612106ae74c8621b8677d58f13dcda27570a", + "typeString": "literal_string \"log(address,uint256,string,address)\"" + }, + "value": "log(address,uint256,string,address)" + }, + { + "id": 19795, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19782, + "src": "58161:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19796, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19784, + "src": "58165:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19797, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19786, + "src": "58169:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 19798, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19788, + "src": "58173:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5c430d475ad8236f34d086a6aae3612106ae74c8621b8677d58f13dcda27570a", + "typeString": "literal_string \"log(address,uint256,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19792, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58098:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19793, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58098:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58098:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19791, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "58082:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58082:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19801, + "nodeType": "ExpressionStatement", + "src": "58082:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58000:3:5", + "parameters": { + "id": 19789, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19782, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58012:2:5", + "nodeType": "VariableDeclaration", + "scope": 19803, + "src": "58004:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19781, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58004:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19784, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58024:2:5", + "nodeType": "VariableDeclaration", + "scope": 19803, + "src": "58016:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19783, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58016:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19786, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58042:2:5", + "nodeType": "VariableDeclaration", + "scope": 19803, + "src": "58028:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19785, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58028:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19788, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58054:2:5", + "nodeType": "VariableDeclaration", + "scope": 19803, + "src": "58046:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19787, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58046:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58003:54:5" + }, + "returnParameters": { + "id": 19790, + "nodeType": "ParameterList", + "parameters": [], + "src": "58072:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19826, + "nodeType": "FunctionDefinition", + "src": "58190:182:5", + "body": { + "id": 19825, + "nodeType": "Block", + "src": "58262:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c75696e7432353629", + "id": 19817, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58312:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_22f6b999343c50207803e85ddd9e714a5457dacc91c49407b8de02bdaf889e5e", + "typeString": "literal_string \"log(address,uint256,bool,uint256)\"" + }, + "value": "log(address,uint256,bool,uint256)" + }, + { + "id": 19818, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19805, + "src": "58349:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19819, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19807, + "src": "58353:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19820, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19809, + "src": "58357:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19821, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19811, + "src": "58361:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_22f6b999343c50207803e85ddd9e714a5457dacc91c49407b8de02bdaf889e5e", + "typeString": "literal_string \"log(address,uint256,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19815, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58288:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58288:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58288:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19814, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "58272:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58272:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19824, + "nodeType": "ExpressionStatement", + "src": "58272:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58199:3:5", + "parameters": { + "id": 19812, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19805, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58211:2:5", + "nodeType": "VariableDeclaration", + "scope": 19826, + "src": "58203:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19804, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58203:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19807, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58223:2:5", + "nodeType": "VariableDeclaration", + "scope": 19826, + "src": "58215:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19806, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58215:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19809, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58232:2:5", + "nodeType": "VariableDeclaration", + "scope": 19826, + "src": "58227:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19808, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58227:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19811, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58244:2:5", + "nodeType": "VariableDeclaration", + "scope": 19826, + "src": "58236:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19810, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58236:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "58202:45:5" + }, + "returnParameters": { + "id": 19813, + "nodeType": "ParameterList", + "parameters": [], + "src": "58262:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19849, + "nodeType": "FunctionDefinition", + "src": "58378:187:5", + "body": { + "id": 19848, + "nodeType": "Block", + "src": "58456:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c737472696e6729", + "id": 19840, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58506:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5ad85f9b1e72940e5c2ff98bcaf10dac65873a2d1f60566284e5a9bba66ce0b", + "typeString": "literal_string \"log(address,uint256,bool,string)\"" + }, + "value": "log(address,uint256,bool,string)" + }, + { + "id": 19841, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19828, + "src": "58542:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19842, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19830, + "src": "58546:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19843, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19832, + "src": "58550:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19844, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19834, + "src": "58554:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5ad85f9b1e72940e5c2ff98bcaf10dac65873a2d1f60566284e5a9bba66ce0b", + "typeString": "literal_string \"log(address,uint256,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19838, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58482:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58482:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58482:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19837, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "58466:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58466:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19847, + "nodeType": "ExpressionStatement", + "src": "58466:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58387:3:5", + "parameters": { + "id": 19835, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19828, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58399:2:5", + "nodeType": "VariableDeclaration", + "scope": 19849, + "src": "58391:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19827, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58391:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19830, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58411:2:5", + "nodeType": "VariableDeclaration", + "scope": 19849, + "src": "58403:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19829, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58403:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19832, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58420:2:5", + "nodeType": "VariableDeclaration", + "scope": 19849, + "src": "58415:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19831, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58415:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19834, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58438:2:5", + "nodeType": "VariableDeclaration", + "scope": 19849, + "src": "58424:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19833, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "58424:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "58390:51:5" + }, + "returnParameters": { + "id": 19836, + "nodeType": "ParameterList", + "parameters": [], + "src": "58456:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19872, + "nodeType": "FunctionDefinition", + "src": "58571:176:5", + "body": { + "id": 19871, + "nodeType": "Block", + "src": "58640:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c626f6f6c29", + "id": 19863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58690:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bf5e5379bfb03415fbd47322e912c55a56b102cc24fbed41ca848047f460ae7", + "typeString": "literal_string \"log(address,uint256,bool,bool)\"" + }, + "value": "log(address,uint256,bool,bool)" + }, + { + "id": 19864, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19851, + "src": "58724:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19865, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19853, + "src": "58728:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19866, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19855, + "src": "58732:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19867, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19857, + "src": "58736:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3bf5e5379bfb03415fbd47322e912c55a56b102cc24fbed41ca848047f460ae7", + "typeString": "literal_string \"log(address,uint256,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19861, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58666:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19862, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58666:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19868, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58666:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19860, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "58650:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19869, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58650:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19870, + "nodeType": "ExpressionStatement", + "src": "58650:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58580:3:5", + "parameters": { + "id": 19858, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19851, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58592:2:5", + "nodeType": "VariableDeclaration", + "scope": 19872, + "src": "58584:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19850, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58584:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19853, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58604:2:5", + "nodeType": "VariableDeclaration", + "scope": 19872, + "src": "58596:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19852, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58596:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19855, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58613:2:5", + "nodeType": "VariableDeclaration", + "scope": 19872, + "src": "58608:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19854, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58608:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19857, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58622:2:5", + "nodeType": "VariableDeclaration", + "scope": 19872, + "src": "58617:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19856, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58617:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "58583:42:5" + }, + "returnParameters": { + "id": 19859, + "nodeType": "ParameterList", + "parameters": [], + "src": "58640:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19895, + "nodeType": "FunctionDefinition", + "src": "58753:182:5", + "body": { + "id": 19894, + "nodeType": "Block", + "src": "58825:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c626f6f6c2c6164647265737329", + "id": 19886, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "58875:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a31bfdcce87cf9e77dc577737a291feb3aa727a8fbb8205e53519527c85ff290", + "typeString": "literal_string \"log(address,uint256,bool,address)\"" + }, + "value": "log(address,uint256,bool,address)" + }, + { + "id": 19887, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19874, + "src": "58912:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19888, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19876, + "src": "58916:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19889, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19878, + "src": "58920:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 19890, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19880, + "src": "58924:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a31bfdcce87cf9e77dc577737a291feb3aa727a8fbb8205e53519527c85ff290", + "typeString": "literal_string \"log(address,uint256,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19884, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "58851:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19885, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "58851:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58851:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19883, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "58835:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "58835:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19893, + "nodeType": "ExpressionStatement", + "src": "58835:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58762:3:5", + "parameters": { + "id": 19881, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19874, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58774:2:5", + "nodeType": "VariableDeclaration", + "scope": 19895, + "src": "58766:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19873, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58766:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19876, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58786:2:5", + "nodeType": "VariableDeclaration", + "scope": 19895, + "src": "58778:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19875, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58778:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19878, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58795:2:5", + "nodeType": "VariableDeclaration", + "scope": 19895, + "src": "58790:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19877, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "58790:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19880, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58807:2:5", + "nodeType": "VariableDeclaration", + "scope": 19895, + "src": "58799:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19879, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58799:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "58765:45:5" + }, + "returnParameters": { + "id": 19882, + "nodeType": "ParameterList", + "parameters": [], + "src": "58825:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19918, + "nodeType": "FunctionDefinition", + "src": "58941:188:5", + "body": { + "id": 19917, + "nodeType": "Block", + "src": "59016:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c75696e7432353629", + "id": 19909, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59066:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_100f650ebf81cb406bb4fb842e06128992c5a86986b0eab3b9e965c3254516e6", + "typeString": "literal_string \"log(address,uint256,address,uint256)\"" + }, + "value": "log(address,uint256,address,uint256)" + }, + { + "id": 19910, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19897, + "src": "59106:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19911, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19899, + "src": "59110:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19912, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19901, + "src": "59114:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19913, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19903, + "src": "59118:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_100f650ebf81cb406bb4fb842e06128992c5a86986b0eab3b9e965c3254516e6", + "typeString": "literal_string \"log(address,uint256,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19907, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59042:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59042:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59042:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19906, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "59026:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59026:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19916, + "nodeType": "ExpressionStatement", + "src": "59026:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "58950:3:5", + "parameters": { + "id": 19904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19897, + "mutability": "mutable", + "name": "p0", + "nameLocation": "58962:2:5", + "nodeType": "VariableDeclaration", + "scope": 19918, + "src": "58954:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19896, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58954:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19899, + "mutability": "mutable", + "name": "p1", + "nameLocation": "58974:2:5", + "nodeType": "VariableDeclaration", + "scope": 19918, + "src": "58966:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19898, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58966:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19901, + "mutability": "mutable", + "name": "p2", + "nameLocation": "58986:2:5", + "nodeType": "VariableDeclaration", + "scope": 19918, + "src": "58978:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "58978:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19903, + "mutability": "mutable", + "name": "p3", + "nameLocation": "58998:2:5", + "nodeType": "VariableDeclaration", + "scope": 19918, + "src": "58990:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19902, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "58990:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "58953:48:5" + }, + "returnParameters": { + "id": 19905, + "nodeType": "ParameterList", + "parameters": [], + "src": "59016:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19941, + "nodeType": "FunctionDefinition", + "src": "59135:193:5", + "body": { + "id": 19940, + "nodeType": "Block", + "src": "59216:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c737472696e6729", + "id": 19932, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59266:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1da986ea2505037a166dd31728d673db1dd36bf0935c0201f0d23934a6acafdb", + "typeString": "literal_string \"log(address,uint256,address,string)\"" + }, + "value": "log(address,uint256,address,string)" + }, + { + "id": 19933, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19920, + "src": "59305:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19934, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19922, + "src": "59309:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19935, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19924, + "src": "59313:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19936, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19926, + "src": "59317:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1da986ea2505037a166dd31728d673db1dd36bf0935c0201f0d23934a6acafdb", + "typeString": "literal_string \"log(address,uint256,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 19930, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59242:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59242:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59242:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19929, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "59226:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59226:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19939, + "nodeType": "ExpressionStatement", + "src": "59226:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59144:3:5", + "parameters": { + "id": 19927, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19920, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59156:2:5", + "nodeType": "VariableDeclaration", + "scope": 19941, + "src": "59148:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19919, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59148:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19922, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59168:2:5", + "nodeType": "VariableDeclaration", + "scope": 19941, + "src": "59160:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19921, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59160:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19924, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59180:2:5", + "nodeType": "VariableDeclaration", + "scope": 19941, + "src": "59172:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19923, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59172:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19926, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59198:2:5", + "nodeType": "VariableDeclaration", + "scope": 19941, + "src": "59184:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19925, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59184:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "59147:54:5" + }, + "returnParameters": { + "id": 19928, + "nodeType": "ParameterList", + "parameters": [], + "src": "59216:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19964, + "nodeType": "FunctionDefinition", + "src": "59334:182:5", + "body": { + "id": 19963, + "nodeType": "Block", + "src": "59406:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c626f6f6c29", + "id": 19955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59456:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a1bcc9b3f106a0ac6ebf0cd2eda5f636e4ab1afa891b1acb460dd180f14bb322", + "typeString": "literal_string \"log(address,uint256,address,bool)\"" + }, + "value": "log(address,uint256,address,bool)" + }, + { + "id": 19956, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19943, + "src": "59493:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19957, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19945, + "src": "59497:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19958, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19947, + "src": "59501:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19959, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19949, + "src": "59505:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a1bcc9b3f106a0ac6ebf0cd2eda5f636e4ab1afa891b1acb460dd180f14bb322", + "typeString": "literal_string \"log(address,uint256,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 19953, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59432:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59432:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59432:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19952, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "59416:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59416:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19962, + "nodeType": "ExpressionStatement", + "src": "59416:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59343:3:5", + "parameters": { + "id": 19950, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19943, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59355:2:5", + "nodeType": "VariableDeclaration", + "scope": 19964, + "src": "59347:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19942, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59347:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19945, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59367:2:5", + "nodeType": "VariableDeclaration", + "scope": 19964, + "src": "59359:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19944, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59359:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19947, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59379:2:5", + "nodeType": "VariableDeclaration", + "scope": 19964, + "src": "59371:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19946, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59371:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19949, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59388:2:5", + "nodeType": "VariableDeclaration", + "scope": 19964, + "src": "59383:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 19948, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "59383:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "59346:45:5" + }, + "returnParameters": { + "id": 19951, + "nodeType": "ParameterList", + "parameters": [], + "src": "59406:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 19987, + "nodeType": "FunctionDefinition", + "src": "59522:188:5", + "body": { + "id": 19986, + "nodeType": "Block", + "src": "59597:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c75696e743235362c616464726573732c6164647265737329", + "id": 19978, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59647:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_478d1c625a50f0548fbd6ce5c9463f034dc2ce146c930b3546dac402346457d4", + "typeString": "literal_string \"log(address,uint256,address,address)\"" + }, + "value": "log(address,uint256,address,address)" + }, + { + "id": 19979, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19966, + "src": "59687:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19980, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19968, + "src": "59691:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 19981, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19970, + "src": "59695:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 19982, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19972, + "src": "59699:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_478d1c625a50f0548fbd6ce5c9463f034dc2ce146c930b3546dac402346457d4", + "typeString": "literal_string \"log(address,uint256,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 19976, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59623:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 19977, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59623:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 19983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59623:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19975, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "59607:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 19984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59607:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 19985, + "nodeType": "ExpressionStatement", + "src": "59607:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59531:3:5", + "parameters": { + "id": 19973, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19966, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59543:2:5", + "nodeType": "VariableDeclaration", + "scope": 19987, + "src": "59535:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19965, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59535:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19968, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59555:2:5", + "nodeType": "VariableDeclaration", + "scope": 19987, + "src": "59547:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19967, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59547:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19970, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59567:2:5", + "nodeType": "VariableDeclaration", + "scope": 19987, + "src": "59559:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19969, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59559:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19972, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59579:2:5", + "nodeType": "VariableDeclaration", + "scope": 19987, + "src": "59571:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59571:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "59534:48:5" + }, + "returnParameters": { + "id": 19974, + "nodeType": "ParameterList", + "parameters": [], + "src": "59597:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20010, + "nodeType": "FunctionDefinition", + "src": "59716:193:5", + "body": { + "id": 20009, + "nodeType": "Block", + "src": "59797:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c75696e7432353629", + "id": 20001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "59847:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1dc8e1b86f5e8cc33f88f9c9577316d392566cde443e43069eebe8e56a0a0562", + "typeString": "literal_string \"log(address,string,uint256,uint256)\"" + }, + "value": "log(address,string,uint256,uint256)" + }, + { + "id": 20002, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19989, + "src": "59886:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20003, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19991, + "src": "59890:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20004, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19993, + "src": "59894:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20005, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 19995, + "src": "59898:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1dc8e1b86f5e8cc33f88f9c9577316d392566cde443e43069eebe8e56a0a0562", + "typeString": "literal_string \"log(address,string,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 19999, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "59823:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "59823:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20006, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59823:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 19998, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "59807:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "59807:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20008, + "nodeType": "ExpressionStatement", + "src": "59807:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59725:3:5", + "parameters": { + "id": 19996, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19989, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59737:2:5", + "nodeType": "VariableDeclaration", + "scope": 20010, + "src": "59729:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 19988, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59729:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19991, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59755:2:5", + "nodeType": "VariableDeclaration", + "scope": 20010, + "src": "59741:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 19990, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59741:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19993, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59767:2:5", + "nodeType": "VariableDeclaration", + "scope": 20010, + "src": "59759:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19992, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59759:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 19995, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59779:2:5", + "nodeType": "VariableDeclaration", + "scope": 20010, + "src": "59771:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 19994, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59771:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "59728:54:5" + }, + "returnParameters": { + "id": 19997, + "nodeType": "ParameterList", + "parameters": [], + "src": "59797:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20033, + "nodeType": "FunctionDefinition", + "src": "59915:198:5", + "body": { + "id": 20032, + "nodeType": "Block", + "src": "60002:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c737472696e6729", + "id": 20024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60052:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_448830a8c1281c2ef562207eb8a81eaf8ce3a05f5db2e480f1a7741f740725d3", + "typeString": "literal_string \"log(address,string,uint256,string)\"" + }, + "value": "log(address,string,uint256,string)" + }, + { + "id": 20025, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20012, + "src": "60090:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20026, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20014, + "src": "60094:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20027, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20016, + "src": "60098:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20028, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20018, + "src": "60102:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_448830a8c1281c2ef562207eb8a81eaf8ce3a05f5db2e480f1a7741f740725d3", + "typeString": "literal_string \"log(address,string,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20022, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60028:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20023, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60028:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60028:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20021, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "60012:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20030, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60012:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20031, + "nodeType": "ExpressionStatement", + "src": "60012:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "59924:3:5", + "parameters": { + "id": 20019, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20012, + "mutability": "mutable", + "name": "p0", + "nameLocation": "59936:2:5", + "nodeType": "VariableDeclaration", + "scope": 20033, + "src": "59928:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20011, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "59928:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20014, + "mutability": "mutable", + "name": "p1", + "nameLocation": "59954:2:5", + "nodeType": "VariableDeclaration", + "scope": 20033, + "src": "59940:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20013, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59940:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20016, + "mutability": "mutable", + "name": "p2", + "nameLocation": "59966:2:5", + "nodeType": "VariableDeclaration", + "scope": 20033, + "src": "59958:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20015, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "59958:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20018, + "mutability": "mutable", + "name": "p3", + "nameLocation": "59984:2:5", + "nodeType": "VariableDeclaration", + "scope": 20033, + "src": "59970:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20017, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "59970:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "59927:60:5" + }, + "returnParameters": { + "id": 20020, + "nodeType": "ParameterList", + "parameters": [], + "src": "60002:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20056, + "nodeType": "FunctionDefinition", + "src": "60119:187:5", + "body": { + "id": 20055, + "nodeType": "Block", + "src": "60197:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c626f6f6c29", + "id": 20047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60247:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0ef7e050655c297a96024e476b2cd79b6c7fd3efbcd797a5d2723a888114ada4", + "typeString": "literal_string \"log(address,string,uint256,bool)\"" + }, + "value": "log(address,string,uint256,bool)" + }, + { + "id": 20048, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20035, + "src": "60283:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20049, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20037, + "src": "60287:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20050, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20039, + "src": "60291:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20051, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20041, + "src": "60295:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0ef7e050655c297a96024e476b2cd79b6c7fd3efbcd797a5d2723a888114ada4", + "typeString": "literal_string \"log(address,string,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20045, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60223:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60223:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60223:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20044, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "60207:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60207:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20054, + "nodeType": "ExpressionStatement", + "src": "60207:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60128:3:5", + "parameters": { + "id": 20042, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20035, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60140:2:5", + "nodeType": "VariableDeclaration", + "scope": 20056, + "src": "60132:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20034, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60132:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20037, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60158:2:5", + "nodeType": "VariableDeclaration", + "scope": 20056, + "src": "60144:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20036, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60144:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20039, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60170:2:5", + "nodeType": "VariableDeclaration", + "scope": 20056, + "src": "60162:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20038, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60162:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20041, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60179:2:5", + "nodeType": "VariableDeclaration", + "scope": 20056, + "src": "60174:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20040, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60174:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "60131:51:5" + }, + "returnParameters": { + "id": 20043, + "nodeType": "ParameterList", + "parameters": [], + "src": "60197:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20079, + "nodeType": "FunctionDefinition", + "src": "60312:193:5", + "body": { + "id": 20078, + "nodeType": "Block", + "src": "60393:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c75696e743235362c6164647265737329", + "id": 20070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60443:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_631836789e813227d6b1cf492359a1dbdd837663758bd3e55e319e4a730f0a18", + "typeString": "literal_string \"log(address,string,uint256,address)\"" + }, + "value": "log(address,string,uint256,address)" + }, + { + "id": 20071, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20058, + "src": "60482:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20072, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20060, + "src": "60486:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20073, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20062, + "src": "60490:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20074, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20064, + "src": "60494:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_631836789e813227d6b1cf492359a1dbdd837663758bd3e55e319e4a730f0a18", + "typeString": "literal_string \"log(address,string,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20068, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60419:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60419:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20075, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60419:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20067, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "60403:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60403:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20077, + "nodeType": "ExpressionStatement", + "src": "60403:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60321:3:5", + "parameters": { + "id": 20065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20058, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60333:2:5", + "nodeType": "VariableDeclaration", + "scope": 20079, + "src": "60325:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20057, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60325:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20060, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60351:2:5", + "nodeType": "VariableDeclaration", + "scope": 20079, + "src": "60337:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20059, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60337:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20062, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60363:2:5", + "nodeType": "VariableDeclaration", + "scope": 20079, + "src": "60355:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20061, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60355:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20064, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60375:2:5", + "nodeType": "VariableDeclaration", + "scope": 20079, + "src": "60367:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20063, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60367:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "60324:54:5" + }, + "returnParameters": { + "id": 20066, + "nodeType": "ParameterList", + "parameters": [], + "src": "60393:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20102, + "nodeType": "FunctionDefinition", + "src": "60511:198:5", + "body": { + "id": 20101, + "nodeType": "Block", + "src": "60598:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c75696e7432353629", + "id": 20093, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60648:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_159f89272dbf40436b74fcc844c992c1f5cc6a7cc05a9db80782be1a20a8f265", + "typeString": "literal_string \"log(address,string,string,uint256)\"" + }, + "value": "log(address,string,string,uint256)" + }, + { + "id": 20094, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20081, + "src": "60686:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20095, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20083, + "src": "60690:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20096, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20085, + "src": "60694:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20097, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20087, + "src": "60698:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_159f89272dbf40436b74fcc844c992c1f5cc6a7cc05a9db80782be1a20a8f265", + "typeString": "literal_string \"log(address,string,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20091, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60624:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60624:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60624:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20090, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "60608:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20099, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60608:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20100, + "nodeType": "ExpressionStatement", + "src": "60608:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60520:3:5", + "parameters": { + "id": 20088, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20081, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60532:2:5", + "nodeType": "VariableDeclaration", + "scope": 20102, + "src": "60524:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20080, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60524:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20083, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60550:2:5", + "nodeType": "VariableDeclaration", + "scope": 20102, + "src": "60536:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20082, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60536:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20085, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60568:2:5", + "nodeType": "VariableDeclaration", + "scope": 20102, + "src": "60554:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20084, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60554:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20087, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60580:2:5", + "nodeType": "VariableDeclaration", + "scope": 20102, + "src": "60572:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20086, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "60572:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "60523:60:5" + }, + "returnParameters": { + "id": 20089, + "nodeType": "ParameterList", + "parameters": [], + "src": "60598:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20125, + "nodeType": "FunctionDefinition", + "src": "60715:203:5", + "body": { + "id": 20124, + "nodeType": "Block", + "src": "60808:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c737472696e6729", + "id": 20116, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "60858:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + "value": "log(address,string,string,string)" + }, + { + "id": 20117, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20104, + "src": "60895:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20118, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20106, + "src": "60899:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20119, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20108, + "src": "60903:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20120, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20110, + "src": "60907:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5d02c50b371ad9a1f5c638dc99b5e9b545011f148f0be5233c530a4b2a12665c", + "typeString": "literal_string \"log(address,string,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20114, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "60834:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "60834:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60834:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20113, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "60818:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "60818:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20123, + "nodeType": "ExpressionStatement", + "src": "60818:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60724:3:5", + "parameters": { + "id": 20111, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20104, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60736:2:5", + "nodeType": "VariableDeclaration", + "scope": 20125, + "src": "60728:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20103, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60728:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20106, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60754:2:5", + "nodeType": "VariableDeclaration", + "scope": 20125, + "src": "60740:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20105, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60740:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20108, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60772:2:5", + "nodeType": "VariableDeclaration", + "scope": 20125, + "src": "60758:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20107, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60758:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20110, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60790:2:5", + "nodeType": "VariableDeclaration", + "scope": 20125, + "src": "60776:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20109, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60776:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "60727:66:5" + }, + "returnParameters": { + "id": 20112, + "nodeType": "ParameterList", + "parameters": [], + "src": "60808:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20148, + "nodeType": "FunctionDefinition", + "src": "60924:192:5", + "body": { + "id": 20147, + "nodeType": "Block", + "src": "61008:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c626f6f6c29", + "id": 20139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61058:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + "value": "log(address,string,string,bool)" + }, + { + "id": 20140, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20127, + "src": "61093:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20141, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20129, + "src": "61097:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20142, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20131, + "src": "61101:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20143, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20133, + "src": "61105:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_35a5071fa9f4610e50772083182f21e949e7a02301a3936e315dd1c4fc39a9ed", + "typeString": "literal_string \"log(address,string,string,bool)\"" + }, + { + "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" + } + ], + "expression": { + "id": 20137, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61034:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61034:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61034:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20136, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61018:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20145, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61018:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20146, + "nodeType": "ExpressionStatement", + "src": "61018:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "60933:3:5", + "parameters": { + "id": 20134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20127, + "mutability": "mutable", + "name": "p0", + "nameLocation": "60945:2:5", + "nodeType": "VariableDeclaration", + "scope": 20148, + "src": "60937:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "60937:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20129, + "mutability": "mutable", + "name": "p1", + "nameLocation": "60963:2:5", + "nodeType": "VariableDeclaration", + "scope": 20148, + "src": "60949:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20128, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60949:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20131, + "mutability": "mutable", + "name": "p2", + "nameLocation": "60981:2:5", + "nodeType": "VariableDeclaration", + "scope": 20148, + "src": "60967:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20130, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "60967:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20133, + "mutability": "mutable", + "name": "p3", + "nameLocation": "60990:2:5", + "nodeType": "VariableDeclaration", + "scope": 20148, + "src": "60985:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20132, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "60985:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "60936:57:5" + }, + "returnParameters": { + "id": 20135, + "nodeType": "ParameterList", + "parameters": [], + "src": "61008:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20171, + "nodeType": "FunctionDefinition", + "src": "61122:198:5", + "body": { + "id": 20170, + "nodeType": "Block", + "src": "61209:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c737472696e672c6164647265737329", + "id": 20162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61259:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + "value": "log(address,string,string,address)" + }, + { + "id": 20163, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20150, + "src": "61297:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20164, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20152, + "src": "61301:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20165, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20154, + "src": "61305:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20166, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20156, + "src": "61309:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a04e2f87a739673cc9223810c24b00b35c6b2c9f3ef123cc82866752e1fa816f", + "typeString": "literal_string \"log(address,string,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61235:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61235:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61235:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20159, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61219:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20168, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61219:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20169, + "nodeType": "ExpressionStatement", + "src": "61219:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61131:3:5", + "parameters": { + "id": 20157, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20150, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61143:2:5", + "nodeType": "VariableDeclaration", + "scope": 20171, + "src": "61135:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20149, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61135:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20152, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61161:2:5", + "nodeType": "VariableDeclaration", + "scope": 20171, + "src": "61147:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20151, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61147:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20154, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61179:2:5", + "nodeType": "VariableDeclaration", + "scope": 20171, + "src": "61165:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20153, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61165:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20156, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61191:2:5", + "nodeType": "VariableDeclaration", + "scope": 20171, + "src": "61183:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20155, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61183:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61134:60:5" + }, + "returnParameters": { + "id": 20158, + "nodeType": "ParameterList", + "parameters": [], + "src": "61209:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20194, + "nodeType": "FunctionDefinition", + "src": "61326:187:5", + "body": { + "id": 20193, + "nodeType": "Block", + "src": "61404:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c75696e7432353629", + "id": 20185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61454:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_515e38b61b40d622a4c0448953be005b3991f6a70155c59b5dca42a264aa0345", + "typeString": "literal_string \"log(address,string,bool,uint256)\"" + }, + "value": "log(address,string,bool,uint256)" + }, + { + "id": 20186, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20173, + "src": "61490:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20187, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20175, + "src": "61494:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20188, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20177, + "src": "61498:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20189, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20179, + "src": "61502:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_515e38b61b40d622a4c0448953be005b3991f6a70155c59b5dca42a264aa0345", + "typeString": "literal_string \"log(address,string,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20183, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61430:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61430:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61430:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20182, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61414:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61414:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20192, + "nodeType": "ExpressionStatement", + "src": "61414:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61335:3:5", + "parameters": { + "id": 20180, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20173, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61347:2:5", + "nodeType": "VariableDeclaration", + "scope": 20194, + "src": "61339:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20172, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61339:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20175, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61365:2:5", + "nodeType": "VariableDeclaration", + "scope": 20194, + "src": "61351:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20174, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61351:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20177, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61374:2:5", + "nodeType": "VariableDeclaration", + "scope": 20194, + "src": "61369:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20176, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61369:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20179, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61386:2:5", + "nodeType": "VariableDeclaration", + "scope": 20194, + "src": "61378:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20178, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "61378:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "61338:51:5" + }, + "returnParameters": { + "id": 20181, + "nodeType": "ParameterList", + "parameters": [], + "src": "61404:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20217, + "nodeType": "FunctionDefinition", + "src": "61519:192:5", + "body": { + "id": 20216, + "nodeType": "Block", + "src": "61603:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c737472696e6729", + "id": 20208, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61653:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + "value": "log(address,string,bool,string)" + }, + { + "id": 20209, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20196, + "src": "61688:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20210, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20198, + "src": "61692:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20211, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20200, + "src": "61696:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20212, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20202, + "src": "61700:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_bc0b61fe9497b47eb6a51a5a6a4bf26b32ddcbc9407ccae8cc7de64b3e3d84cc", + "typeString": "literal_string \"log(address,string,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20206, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61629:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20207, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61629:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61629:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20205, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61613:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61613:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20215, + "nodeType": "ExpressionStatement", + "src": "61613:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61528:3:5", + "parameters": { + "id": 20203, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20196, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61540:2:5", + "nodeType": "VariableDeclaration", + "scope": 20217, + "src": "61532:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61532:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20198, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61558:2:5", + "nodeType": "VariableDeclaration", + "scope": 20217, + "src": "61544:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20197, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61544:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20200, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61567:2:5", + "nodeType": "VariableDeclaration", + "scope": 20217, + "src": "61562:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20199, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61562:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20202, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61585:2:5", + "nodeType": "VariableDeclaration", + "scope": 20217, + "src": "61571:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20201, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61571:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "61531:57:5" + }, + "returnParameters": { + "id": 20204, + "nodeType": "ParameterList", + "parameters": [], + "src": "61603:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20240, + "nodeType": "FunctionDefinition", + "src": "61717:181:5", + "body": { + "id": 20239, + "nodeType": "Block", + "src": "61792:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c626f6f6c29", + "id": 20231, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "61842:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + "value": "log(address,string,bool,bool)" + }, + { + "id": 20232, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20219, + "src": "61875:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20233, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20221, + "src": "61879:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20234, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20223, + "src": "61883:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20235, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20225, + "src": "61887:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_5f1d5c9f0de8c048364058d1d6842804ada33dbc34bf9eaff8f2be978f384e08", + "typeString": "literal_string \"log(address,string,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20229, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "61818:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20230, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "61818:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61818:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20228, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61802:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61802:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20238, + "nodeType": "ExpressionStatement", + "src": "61802:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61726:3:5", + "parameters": { + "id": 20226, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20219, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61738:2:5", + "nodeType": "VariableDeclaration", + "scope": 20240, + "src": "61730:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20218, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61730:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20221, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61756:2:5", + "nodeType": "VariableDeclaration", + "scope": 20240, + "src": "61742:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20220, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61742:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20223, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61765:2:5", + "nodeType": "VariableDeclaration", + "scope": 20240, + "src": "61760:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20222, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61760:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20225, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61774:2:5", + "nodeType": "VariableDeclaration", + "scope": 20240, + "src": "61769:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20224, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61769:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "61729:48:5" + }, + "returnParameters": { + "id": 20227, + "nodeType": "ParameterList", + "parameters": [], + "src": "61792:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20263, + "nodeType": "FunctionDefinition", + "src": "61904:187:5", + "body": { + "id": 20262, + "nodeType": "Block", + "src": "61982:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c626f6f6c2c6164647265737329", + "id": 20254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62032:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + "value": "log(address,string,bool,address)" + }, + { + "id": 20255, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20242, + "src": "62068:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20256, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20244, + "src": "62072:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20257, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20246, + "src": "62076:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20258, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20248, + "src": "62080:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_205871c2f2d320acdd350939b5fc035cc20b1a9cc058fb26f1c9fb3d2ba59970", + "typeString": "literal_string \"log(address,string,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20252, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62008:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62008:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62008:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20251, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "61992:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "61992:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20261, + "nodeType": "ExpressionStatement", + "src": "61992:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "61913:3:5", + "parameters": { + "id": 20249, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20242, + "mutability": "mutable", + "name": "p0", + "nameLocation": "61925:2:5", + "nodeType": "VariableDeclaration", + "scope": 20263, + "src": "61917:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20241, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61917:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20244, + "mutability": "mutable", + "name": "p1", + "nameLocation": "61943:2:5", + "nodeType": "VariableDeclaration", + "scope": 20263, + "src": "61929:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20243, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "61929:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20246, + "mutability": "mutable", + "name": "p2", + "nameLocation": "61952:2:5", + "nodeType": "VariableDeclaration", + "scope": 20263, + "src": "61947:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20245, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "61947:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20248, + "mutability": "mutable", + "name": "p3", + "nameLocation": "61964:2:5", + "nodeType": "VariableDeclaration", + "scope": 20263, + "src": "61956:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20247, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "61956:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "61916:51:5" + }, + "returnParameters": { + "id": 20250, + "nodeType": "ParameterList", + "parameters": [], + "src": "61982:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20286, + "nodeType": "FunctionDefinition", + "src": "62097:193:5", + "body": { + "id": 20285, + "nodeType": "Block", + "src": "62178:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c75696e7432353629", + "id": 20277, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62228:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_457fe3cf7da0d45ce051e53ef9adc21213d4d7779b5a0fadf99dea432be4beb7", + "typeString": "literal_string \"log(address,string,address,uint256)\"" + }, + "value": "log(address,string,address,uint256)" + }, + { + "id": 20278, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20265, + "src": "62267:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20279, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20267, + "src": "62271:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20280, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20269, + "src": "62275:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20281, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20271, + "src": "62279:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_457fe3cf7da0d45ce051e53ef9adc21213d4d7779b5a0fadf99dea432be4beb7", + "typeString": "literal_string \"log(address,string,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20275, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62204:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62204:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62204:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20274, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "62188:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20283, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62188:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20284, + "nodeType": "ExpressionStatement", + "src": "62188:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62106:3:5", + "parameters": { + "id": 20272, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20265, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62118:2:5", + "nodeType": "VariableDeclaration", + "scope": 20286, + "src": "62110:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20264, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62110:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20267, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62136:2:5", + "nodeType": "VariableDeclaration", + "scope": 20286, + "src": "62122:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20266, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62122:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20269, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62148:2:5", + "nodeType": "VariableDeclaration", + "scope": 20286, + "src": "62140:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20268, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62140:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20271, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62160:2:5", + "nodeType": "VariableDeclaration", + "scope": 20286, + "src": "62152:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20270, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62152:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62109:54:5" + }, + "returnParameters": { + "id": 20273, + "nodeType": "ParameterList", + "parameters": [], + "src": "62178:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20309, + "nodeType": "FunctionDefinition", + "src": "62296:198:5", + "body": { + "id": 20308, + "nodeType": "Block", + "src": "62383:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c737472696e6729", + "id": 20300, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62433:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + "value": "log(address,string,address,string)" + }, + { + "id": 20301, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20288, + "src": "62471:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20302, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20290, + "src": "62475:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20303, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20292, + "src": "62479:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20304, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20294, + "src": "62483:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f7e3624510fc5618feb98a49f5d4404e3749dacbdc916c267fea7b2051a08dea", + "typeString": "literal_string \"log(address,string,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20298, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62409:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62409:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62409:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20297, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "62393:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20306, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62393:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20307, + "nodeType": "ExpressionStatement", + "src": "62393:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62305:3:5", + "parameters": { + "id": 20295, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20288, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62317:2:5", + "nodeType": "VariableDeclaration", + "scope": 20309, + "src": "62309:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20287, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62309:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20290, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62335:2:5", + "nodeType": "VariableDeclaration", + "scope": 20309, + "src": "62321:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20289, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62321:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20292, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62347:2:5", + "nodeType": "VariableDeclaration", + "scope": 20309, + "src": "62339:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20291, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62339:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20294, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62365:2:5", + "nodeType": "VariableDeclaration", + "scope": 20309, + "src": "62351:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20293, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62351:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "62308:60:5" + }, + "returnParameters": { + "id": 20296, + "nodeType": "ParameterList", + "parameters": [], + "src": "62383:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20332, + "nodeType": "FunctionDefinition", + "src": "62500:187:5", + "body": { + "id": 20331, + "nodeType": "Block", + "src": "62578:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c626f6f6c29", + "id": 20323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62628:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + "value": "log(address,string,address,bool)" + }, + { + "id": 20324, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20311, + "src": "62664:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20325, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20313, + "src": "62668:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20326, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20315, + "src": "62672:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20327, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20317, + "src": "62676:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0df12b7620e0bad204ac79fe9930fef9b9a40702161764a681594d50d657b081", + "typeString": "literal_string \"log(address,string,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20321, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62604:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20322, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62604:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20328, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62604:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20320, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "62588:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62588:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20330, + "nodeType": "ExpressionStatement", + "src": "62588:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62509:3:5", + "parameters": { + "id": 20318, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20311, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62521:2:5", + "nodeType": "VariableDeclaration", + "scope": 20332, + "src": "62513:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20310, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62513:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20313, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62539:2:5", + "nodeType": "VariableDeclaration", + "scope": 20332, + "src": "62525:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20312, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62525:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20315, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62551:2:5", + "nodeType": "VariableDeclaration", + "scope": 20332, + "src": "62543:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20314, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62543:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20317, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62560:2:5", + "nodeType": "VariableDeclaration", + "scope": 20332, + "src": "62555:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20316, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62555:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "62512:51:5" + }, + "returnParameters": { + "id": 20319, + "nodeType": "ParameterList", + "parameters": [], + "src": "62578:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20355, + "nodeType": "FunctionDefinition", + "src": "62693:193:5", + "body": { + "id": 20354, + "nodeType": "Block", + "src": "62774:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c737472696e672c616464726573732c6164647265737329", + "id": 20346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "62824:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + "value": "log(address,string,address,address)" + }, + { + "id": 20347, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20334, + "src": "62863:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20348, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20336, + "src": "62867:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20349, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20338, + "src": "62871:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20350, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20340, + "src": "62875:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0d36fa2022fafb45586a59914be3ad4c57b76e89535385dcff89c28c80605121", + "typeString": "literal_string \"log(address,string,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20344, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62800:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20345, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62800:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20351, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62800:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20343, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "62784:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20352, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62784:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20353, + "nodeType": "ExpressionStatement", + "src": "62784:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62702:3:5", + "parameters": { + "id": 20341, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20334, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62714:2:5", + "nodeType": "VariableDeclaration", + "scope": 20355, + "src": "62706:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20333, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62706:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20336, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62732:2:5", + "nodeType": "VariableDeclaration", + "scope": 20355, + "src": "62718:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20335, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "62718:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20338, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62744:2:5", + "nodeType": "VariableDeclaration", + "scope": 20355, + "src": "62736:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20337, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62736:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20340, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62756:2:5", + "nodeType": "VariableDeclaration", + "scope": 20355, + "src": "62748:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20339, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62748:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "62705:54:5" + }, + "returnParameters": { + "id": 20342, + "nodeType": "ParameterList", + "parameters": [], + "src": "62774:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20378, + "nodeType": "FunctionDefinition", + "src": "62892:182:5", + "body": { + "id": 20377, + "nodeType": "Block", + "src": "62964:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c75696e7432353629", + "id": 20369, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63014:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_386ff5f4530ea008cf639214e5b8a55077ec58314989bc72a4ee1f3ffe9617a4", + "typeString": "literal_string \"log(address,bool,uint256,uint256)\"" + }, + "value": "log(address,bool,uint256,uint256)" + }, + { + "id": 20370, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20357, + "src": "63051:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20371, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20359, + "src": "63055:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20372, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20361, + "src": "63059:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20373, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20363, + "src": "63063:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_386ff5f4530ea008cf639214e5b8a55077ec58314989bc72a4ee1f3ffe9617a4", + "typeString": "literal_string \"log(address,bool,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20367, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "62990:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20368, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "62990:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62990:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20366, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "62974:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20375, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "62974:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20376, + "nodeType": "ExpressionStatement", + "src": "62974:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "62901:3:5", + "parameters": { + "id": 20364, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20357, + "mutability": "mutable", + "name": "p0", + "nameLocation": "62913:2:5", + "nodeType": "VariableDeclaration", + "scope": 20378, + "src": "62905:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20356, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "62905:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20359, + "mutability": "mutable", + "name": "p1", + "nameLocation": "62922:2:5", + "nodeType": "VariableDeclaration", + "scope": 20378, + "src": "62917:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20358, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "62917:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20361, + "mutability": "mutable", + "name": "p2", + "nameLocation": "62934:2:5", + "nodeType": "VariableDeclaration", + "scope": 20378, + "src": "62926:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20360, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62926:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20363, + "mutability": "mutable", + "name": "p3", + "nameLocation": "62946:2:5", + "nodeType": "VariableDeclaration", + "scope": 20378, + "src": "62938:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20362, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "62938:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "62904:45:5" + }, + "returnParameters": { + "id": 20365, + "nodeType": "ParameterList", + "parameters": [], + "src": "62964:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20401, + "nodeType": "FunctionDefinition", + "src": "63080:187:5", + "body": { + "id": 20400, + "nodeType": "Block", + "src": "63158:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c737472696e6729", + "id": 20392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63208:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0aa6cfad2c268cd387390ada6d4a75b3aa3e38d6511517eb59fcd07a90f9c283", + "typeString": "literal_string \"log(address,bool,uint256,string)\"" + }, + "value": "log(address,bool,uint256,string)" + }, + { + "id": 20393, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20380, + "src": "63244:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20394, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20382, + "src": "63248:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20395, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20384, + "src": "63252:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20396, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20386, + "src": "63256:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0aa6cfad2c268cd387390ada6d4a75b3aa3e38d6511517eb59fcd07a90f9c283", + "typeString": "literal_string \"log(address,bool,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20390, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63184:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20391, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63184:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63184:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20389, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "63168:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63168:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20399, + "nodeType": "ExpressionStatement", + "src": "63168:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63089:3:5", + "parameters": { + "id": 20387, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20380, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63101:2:5", + "nodeType": "VariableDeclaration", + "scope": 20401, + "src": "63093:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20379, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63093:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20382, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63110:2:5", + "nodeType": "VariableDeclaration", + "scope": 20401, + "src": "63105:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20381, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63105:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20384, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63122:2:5", + "nodeType": "VariableDeclaration", + "scope": 20401, + "src": "63114:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20383, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63114:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20386, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63140:2:5", + "nodeType": "VariableDeclaration", + "scope": 20401, + "src": "63126:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20385, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63126:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63092:51:5" + }, + "returnParameters": { + "id": 20388, + "nodeType": "ParameterList", + "parameters": [], + "src": "63158:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20424, + "nodeType": "FunctionDefinition", + "src": "63273:176:5", + "body": { + "id": 20423, + "nodeType": "Block", + "src": "63342:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c626f6f6c29", + "id": 20415, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63392:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c4643e20494ddb98fe78bc587bcecbcc7db255edcee8232992e8be9b00c4713c", + "typeString": "literal_string \"log(address,bool,uint256,bool)\"" + }, + "value": "log(address,bool,uint256,bool)" + }, + { + "id": 20416, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20403, + "src": "63426:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20417, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20405, + "src": "63430:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20418, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20407, + "src": "63434:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20419, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20409, + "src": "63438:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c4643e20494ddb98fe78bc587bcecbcc7db255edcee8232992e8be9b00c4713c", + "typeString": "literal_string \"log(address,bool,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20413, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63368:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20414, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63368:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63368:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20412, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "63352:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20421, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63352:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20422, + "nodeType": "ExpressionStatement", + "src": "63352:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63282:3:5", + "parameters": { + "id": 20410, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20403, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63294:2:5", + "nodeType": "VariableDeclaration", + "scope": 20424, + "src": "63286:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20402, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63286:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20405, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63303:2:5", + "nodeType": "VariableDeclaration", + "scope": 20424, + "src": "63298:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20404, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63298:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20407, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63315:2:5", + "nodeType": "VariableDeclaration", + "scope": 20424, + "src": "63307:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20406, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63307:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20409, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63324:2:5", + "nodeType": "VariableDeclaration", + "scope": 20424, + "src": "63319:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20408, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63319:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "63285:42:5" + }, + "returnParameters": { + "id": 20411, + "nodeType": "ParameterList", + "parameters": [], + "src": "63342:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20447, + "nodeType": "FunctionDefinition", + "src": "63455:182:5", + "body": { + "id": 20446, + "nodeType": "Block", + "src": "63527:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c75696e743235362c6164647265737329", + "id": 20438, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63577:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ccf790a175b1b762ef5bfd3564f0b74c078f15eca08b8ee654a38a96a5ad2aee", + "typeString": "literal_string \"log(address,bool,uint256,address)\"" + }, + "value": "log(address,bool,uint256,address)" + }, + { + "id": 20439, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20426, + "src": "63614:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20440, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20428, + "src": "63618:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20441, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20430, + "src": "63622:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20442, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20432, + "src": "63626:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ccf790a175b1b762ef5bfd3564f0b74c078f15eca08b8ee654a38a96a5ad2aee", + "typeString": "literal_string \"log(address,bool,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20436, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63553:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20437, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63553:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20443, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63553:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20435, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "63537:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63537:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20445, + "nodeType": "ExpressionStatement", + "src": "63537:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63464:3:5", + "parameters": { + "id": 20433, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20426, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63476:2:5", + "nodeType": "VariableDeclaration", + "scope": 20447, + "src": "63468:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20425, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63468:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20428, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63485:2:5", + "nodeType": "VariableDeclaration", + "scope": 20447, + "src": "63480:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20427, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63480:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20430, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63497:2:5", + "nodeType": "VariableDeclaration", + "scope": 20447, + "src": "63489:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20429, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63489:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20432, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63509:2:5", + "nodeType": "VariableDeclaration", + "scope": 20447, + "src": "63501:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20431, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63501:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "63467:45:5" + }, + "returnParameters": { + "id": 20434, + "nodeType": "ParameterList", + "parameters": [], + "src": "63527:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20470, + "nodeType": "FunctionDefinition", + "src": "63643:187:5", + "body": { + "id": 20469, + "nodeType": "Block", + "src": "63721:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c75696e7432353629", + "id": 20461, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63771:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_80e6a20b48643c1f2494eae694f173a69e42da349d0e193e48fece80e869df69", + "typeString": "literal_string \"log(address,bool,string,uint256)\"" + }, + "value": "log(address,bool,string,uint256)" + }, + { + "id": 20462, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20449, + "src": "63807:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20463, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20451, + "src": "63811:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20464, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20453, + "src": "63815:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20465, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20455, + "src": "63819:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_80e6a20b48643c1f2494eae694f173a69e42da349d0e193e48fece80e869df69", + "typeString": "literal_string \"log(address,bool,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20459, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63747:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20460, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63747:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63747:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20458, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "63731:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63731:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20468, + "nodeType": "ExpressionStatement", + "src": "63731:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63652:3:5", + "parameters": { + "id": 20456, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20449, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63664:2:5", + "nodeType": "VariableDeclaration", + "scope": 20470, + "src": "63656:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20448, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63656:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20451, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63673:2:5", + "nodeType": "VariableDeclaration", + "scope": 20470, + "src": "63668:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20450, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63668:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20453, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63691:2:5", + "nodeType": "VariableDeclaration", + "scope": 20470, + "src": "63677:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20452, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63677:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20455, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63703:2:5", + "nodeType": "VariableDeclaration", + "scope": 20470, + "src": "63695:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20454, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "63695:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "63655:51:5" + }, + "returnParameters": { + "id": 20457, + "nodeType": "ParameterList", + "parameters": [], + "src": "63721:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20493, + "nodeType": "FunctionDefinition", + "src": "63836:192:5", + "body": { + "id": 20492, + "nodeType": "Block", + "src": "63920:108:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c737472696e6729", + "id": 20484, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "63970:33:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + "value": "log(address,bool,string,string)" + }, + { + "id": 20485, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20472, + "src": "64005:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20486, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20474, + "src": "64009:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20487, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20476, + "src": "64013:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20488, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20478, + "src": "64017:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_475c5c33f91155b7a0e86c9fac7985c60ab58f4bfb411ee9b31d994a7fc95d1f", + "typeString": "literal_string \"log(address,bool,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20482, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "63946:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20483, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "63946:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63946:74:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20481, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "63930:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20490, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "63930:91:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20491, + "nodeType": "ExpressionStatement", + "src": "63930:91:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "63845:3:5", + "parameters": { + "id": 20479, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20472, + "mutability": "mutable", + "name": "p0", + "nameLocation": "63857:2:5", + "nodeType": "VariableDeclaration", + "scope": 20493, + "src": "63849:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20471, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "63849:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20474, + "mutability": "mutable", + "name": "p1", + "nameLocation": "63866:2:5", + "nodeType": "VariableDeclaration", + "scope": 20493, + "src": "63861:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20473, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "63861:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20476, + "mutability": "mutable", + "name": "p2", + "nameLocation": "63884:2:5", + "nodeType": "VariableDeclaration", + "scope": 20493, + "src": "63870:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20475, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63870:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20478, + "mutability": "mutable", + "name": "p3", + "nameLocation": "63902:2:5", + "nodeType": "VariableDeclaration", + "scope": 20493, + "src": "63888:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20477, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "63888:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "63848:57:5" + }, + "returnParameters": { + "id": 20480, + "nodeType": "ParameterList", + "parameters": [], + "src": "63920:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20516, + "nodeType": "FunctionDefinition", + "src": "64034:181:5", + "body": { + "id": 20515, + "nodeType": "Block", + "src": "64109:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c626f6f6c29", + "id": 20507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64159:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + "value": "log(address,bool,string,bool)" + }, + { + "id": 20508, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20495, + "src": "64192:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20509, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20497, + "src": "64196:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20510, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20499, + "src": "64200:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20511, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20501, + "src": "64204:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_50ad461db24803fc9b2ba76f072192e0a4d8fbb3667a50c400f504443380890f", + "typeString": "literal_string \"log(address,bool,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20505, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64135:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20506, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64135:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64135:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20504, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "64119:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20513, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64119:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20514, + "nodeType": "ExpressionStatement", + "src": "64119:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64043:3:5", + "parameters": { + "id": 20502, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20495, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64055:2:5", + "nodeType": "VariableDeclaration", + "scope": 20516, + "src": "64047:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20494, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64047:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20497, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64064:2:5", + "nodeType": "VariableDeclaration", + "scope": 20516, + "src": "64059:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20496, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64059:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20499, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64082:2:5", + "nodeType": "VariableDeclaration", + "scope": 20516, + "src": "64068:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20498, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64068:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20501, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64091:2:5", + "nodeType": "VariableDeclaration", + "scope": 20516, + "src": "64086:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20500, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64086:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64046:48:5" + }, + "returnParameters": { + "id": 20503, + "nodeType": "ParameterList", + "parameters": [], + "src": "64109:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20539, + "nodeType": "FunctionDefinition", + "src": "64221:187:5", + "body": { + "id": 20538, + "nodeType": "Block", + "src": "64299:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c737472696e672c6164647265737329", + "id": 20530, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64349:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + "value": "log(address,bool,string,address)" + }, + { + "id": 20531, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20518, + "src": "64385:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20532, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20520, + "src": "64389:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20533, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20522, + "src": "64393:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20534, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20524, + "src": "64397:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_19fd495659df511498cf8dde03672830bd109ef2d9b9bec18e72190917c328bc", + "typeString": "literal_string \"log(address,bool,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20528, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64325:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20529, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64325:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64325:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20527, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "64309:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64309:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20537, + "nodeType": "ExpressionStatement", + "src": "64309:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64230:3:5", + "parameters": { + "id": 20525, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20518, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64242:2:5", + "nodeType": "VariableDeclaration", + "scope": 20539, + "src": "64234:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20517, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64234:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20520, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64251:2:5", + "nodeType": "VariableDeclaration", + "scope": 20539, + "src": "64246:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20519, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64246:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20522, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64269:2:5", + "nodeType": "VariableDeclaration", + "scope": 20539, + "src": "64255:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20521, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64255:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20524, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64281:2:5", + "nodeType": "VariableDeclaration", + "scope": 20539, + "src": "64273:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20523, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64273:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64233:51:5" + }, + "returnParameters": { + "id": 20526, + "nodeType": "ParameterList", + "parameters": [], + "src": "64299:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20562, + "nodeType": "FunctionDefinition", + "src": "64414:176:5", + "body": { + "id": 20561, + "nodeType": "Block", + "src": "64483:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c75696e7432353629", + "id": 20553, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64533:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8c4e5de62881fec144fb423112f08d23c6aca116363a7b195024519470acf22e", + "typeString": "literal_string \"log(address,bool,bool,uint256)\"" + }, + "value": "log(address,bool,bool,uint256)" + }, + { + "id": 20554, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20541, + "src": "64567:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20555, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20543, + "src": "64571:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20556, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20545, + "src": "64575:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20557, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20547, + "src": "64579:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8c4e5de62881fec144fb423112f08d23c6aca116363a7b195024519470acf22e", + "typeString": "literal_string \"log(address,bool,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20551, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64509:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64509:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20558, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64509:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20550, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "64493:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64493:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20560, + "nodeType": "ExpressionStatement", + "src": "64493:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64423:3:5", + "parameters": { + "id": 20548, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20541, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64435:2:5", + "nodeType": "VariableDeclaration", + "scope": 20562, + "src": "64427:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20540, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64427:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20543, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64444:2:5", + "nodeType": "VariableDeclaration", + "scope": 20562, + "src": "64439:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20542, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64439:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20545, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64453:2:5", + "nodeType": "VariableDeclaration", + "scope": 20562, + "src": "64448:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20544, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64448:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20547, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64465:2:5", + "nodeType": "VariableDeclaration", + "scope": 20562, + "src": "64457:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20546, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "64457:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "64426:42:5" + }, + "returnParameters": { + "id": 20549, + "nodeType": "ParameterList", + "parameters": [], + "src": "64483:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20585, + "nodeType": "FunctionDefinition", + "src": "64596:181:5", + "body": { + "id": 20584, + "nodeType": "Block", + "src": "64671:106:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c737472696e6729", + "id": 20576, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64721:31:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + "value": "log(address,bool,bool,string)" + }, + { + "id": 20577, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20564, + "src": "64754:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20578, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20566, + "src": "64758:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20579, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20568, + "src": "64762:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20580, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20570, + "src": "64766:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_dfc4a2e8c56809b44edbbc6d92d0a8441e551ad5387596bf8b629c56d9a91300", + "typeString": "literal_string \"log(address,bool,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20574, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64697:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64697:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64697:72:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20573, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "64681:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64681:89:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20583, + "nodeType": "ExpressionStatement", + "src": "64681:89:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64605:3:5", + "parameters": { + "id": 20571, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20564, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64617:2:5", + "nodeType": "VariableDeclaration", + "scope": 20585, + "src": "64609:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20563, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64609:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20566, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64626:2:5", + "nodeType": "VariableDeclaration", + "scope": 20585, + "src": "64621:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20565, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64621:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20568, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64635:2:5", + "nodeType": "VariableDeclaration", + "scope": 20585, + "src": "64630:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20567, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64630:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20570, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64653:2:5", + "nodeType": "VariableDeclaration", + "scope": 20585, + "src": "64639:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20569, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "64639:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "64608:48:5" + }, + "returnParameters": { + "id": 20572, + "nodeType": "ParameterList", + "parameters": [], + "src": "64671:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20608, + "nodeType": "FunctionDefinition", + "src": "64783:170:5", + "body": { + "id": 20607, + "nodeType": "Block", + "src": "64849:104:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c626f6f6c29", + "id": 20599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "64899:29:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + "value": "log(address,bool,bool,bool)" + }, + { + "id": 20600, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20587, + "src": "64930:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20601, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20589, + "src": "64934:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20602, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20591, + "src": "64938:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20603, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20593, + "src": "64942:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cac434792b973db16714db96d2aeda353b2253f27255abe42b9960b2dc550634", + "typeString": "literal_string \"log(address,bool,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20597, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "64875:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20598, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "64875:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20604, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64875:70:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20596, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "64859:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20605, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "64859:87:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20606, + "nodeType": "ExpressionStatement", + "src": "64859:87:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64792:3:5", + "parameters": { + "id": 20594, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20587, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64804:2:5", + "nodeType": "VariableDeclaration", + "scope": 20608, + "src": "64796:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20586, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64796:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20589, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64813:2:5", + "nodeType": "VariableDeclaration", + "scope": 20608, + "src": "64808:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20588, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64808:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20591, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64822:2:5", + "nodeType": "VariableDeclaration", + "scope": 20608, + "src": "64817:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20590, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64817:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20593, + "mutability": "mutable", + "name": "p3", + "nameLocation": "64831:2:5", + "nodeType": "VariableDeclaration", + "scope": 20608, + "src": "64826:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20592, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64826:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "64795:39:5" + }, + "returnParameters": { + "id": 20595, + "nodeType": "ParameterList", + "parameters": [], + "src": "64849:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20631, + "nodeType": "FunctionDefinition", + "src": "64959:176:5", + "body": { + "id": 20630, + "nodeType": "Block", + "src": "65028:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c626f6f6c2c6164647265737329", + "id": 20622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65078:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + "value": "log(address,bool,bool,address)" + }, + { + "id": 20623, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20610, + "src": "65112:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20624, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20612, + "src": "65116:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20625, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20614, + "src": "65120:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20626, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20616, + "src": "65124:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cf394485abbd1f04b85b0f2c1a2cfc07e3d51c1c6f28386bf16d9e45161e8953", + "typeString": "literal_string \"log(address,bool,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20620, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65054:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20621, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65054:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65054:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20619, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65038:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65038:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20629, + "nodeType": "ExpressionStatement", + "src": "65038:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "64968:3:5", + "parameters": { + "id": 20617, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20610, + "mutability": "mutable", + "name": "p0", + "nameLocation": "64980:2:5", + "nodeType": "VariableDeclaration", + "scope": 20631, + "src": "64972:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20609, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "64972:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20612, + "mutability": "mutable", + "name": "p1", + "nameLocation": "64989:2:5", + "nodeType": "VariableDeclaration", + "scope": 20631, + "src": "64984:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20611, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64984:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20614, + "mutability": "mutable", + "name": "p2", + "nameLocation": "64998:2:5", + "nodeType": "VariableDeclaration", + "scope": 20631, + "src": "64993:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20613, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "64993:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20616, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65010:2:5", + "nodeType": "VariableDeclaration", + "scope": 20631, + "src": "65002:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20615, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65002:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "64971:42:5" + }, + "returnParameters": { + "id": 20618, + "nodeType": "ParameterList", + "parameters": [], + "src": "65028:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20654, + "nodeType": "FunctionDefinition", + "src": "65141:182:5", + "body": { + "id": 20653, + "nodeType": "Block", + "src": "65213:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c75696e7432353629", + "id": 20645, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65263:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a75c59de36827f2596ade7bd79f668ae219518c12b79ebf06071586765c3e039", + "typeString": "literal_string \"log(address,bool,address,uint256)\"" + }, + "value": "log(address,bool,address,uint256)" + }, + { + "id": 20646, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20633, + "src": "65300:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20647, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20635, + "src": "65304:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20648, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20637, + "src": "65308:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20649, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20639, + "src": "65312:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a75c59de36827f2596ade7bd79f668ae219518c12b79ebf06071586765c3e039", + "typeString": "literal_string \"log(address,bool,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20643, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65239:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20644, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65239:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20650, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65239:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20642, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65223:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65223:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20652, + "nodeType": "ExpressionStatement", + "src": "65223:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65150:3:5", + "parameters": { + "id": 20640, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20633, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65162:2:5", + "nodeType": "VariableDeclaration", + "scope": 20654, + "src": "65154:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20632, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65154:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20635, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65171:2:5", + "nodeType": "VariableDeclaration", + "scope": 20654, + "src": "65166:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20634, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65166:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20637, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65183:2:5", + "nodeType": "VariableDeclaration", + "scope": 20654, + "src": "65175:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20636, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65175:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20639, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65195:2:5", + "nodeType": "VariableDeclaration", + "scope": 20654, + "src": "65187:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20638, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65187:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65153:45:5" + }, + "returnParameters": { + "id": 20641, + "nodeType": "ParameterList", + "parameters": [], + "src": "65213:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20677, + "nodeType": "FunctionDefinition", + "src": "65329:187:5", + "body": { + "id": 20676, + "nodeType": "Block", + "src": "65407:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c737472696e6729", + "id": 20668, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65457:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + "value": "log(address,bool,address,string)" + }, + { + "id": 20669, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20656, + "src": "65493:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20670, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20658, + "src": "65497:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20671, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20660, + "src": "65501:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20672, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20662, + "src": "65505:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2dd778e616be9386b5911da1a074bbaf979640681783fca6396ea75c8caf6453", + "typeString": "literal_string \"log(address,bool,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20666, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65433:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20667, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65433:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65433:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20665, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65417:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65417:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20675, + "nodeType": "ExpressionStatement", + "src": "65417:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65338:3:5", + "parameters": { + "id": 20663, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20656, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65350:2:5", + "nodeType": "VariableDeclaration", + "scope": 20677, + "src": "65342:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20655, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65342:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20658, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65359:2:5", + "nodeType": "VariableDeclaration", + "scope": 20677, + "src": "65354:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20657, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65354:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20660, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65371:2:5", + "nodeType": "VariableDeclaration", + "scope": 20677, + "src": "65363:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20659, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65363:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20662, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65389:2:5", + "nodeType": "VariableDeclaration", + "scope": 20677, + "src": "65375:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20661, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "65375:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "65341:51:5" + }, + "returnParameters": { + "id": 20664, + "nodeType": "ParameterList", + "parameters": [], + "src": "65407:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20700, + "nodeType": "FunctionDefinition", + "src": "65522:176:5", + "body": { + "id": 20699, + "nodeType": "Block", + "src": "65591:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c626f6f6c29", + "id": 20691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65641:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + "value": "log(address,bool,address,bool)" + }, + { + "id": 20692, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20679, + "src": "65675:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20693, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20681, + "src": "65679:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20694, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20683, + "src": "65683:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20695, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20685, + "src": "65687:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a6f50b0f122c916fe81861751b94bdddb5e453947768e8af206397bb510790b1", + "typeString": "literal_string \"log(address,bool,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20689, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65617:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20690, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65617:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20696, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65617:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20688, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65601:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20697, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65601:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20698, + "nodeType": "ExpressionStatement", + "src": "65601:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65531:3:5", + "parameters": { + "id": 20686, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20679, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65543:2:5", + "nodeType": "VariableDeclaration", + "scope": 20700, + "src": "65535:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20678, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65535:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20681, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65552:2:5", + "nodeType": "VariableDeclaration", + "scope": 20700, + "src": "65547:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20680, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65547:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20683, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65564:2:5", + "nodeType": "VariableDeclaration", + "scope": 20700, + "src": "65556:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20682, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65556:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20685, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65573:2:5", + "nodeType": "VariableDeclaration", + "scope": 20700, + "src": "65568:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20684, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65568:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "65534:42:5" + }, + "returnParameters": { + "id": 20687, + "nodeType": "ParameterList", + "parameters": [], + "src": "65591:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20723, + "nodeType": "FunctionDefinition", + "src": "65704:182:5", + "body": { + "id": 20722, + "nodeType": "Block", + "src": "65776:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c626f6f6c2c616464726573732c6164647265737329", + "id": 20714, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "65826:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + "value": "log(address,bool,address,address)" + }, + { + "id": 20715, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20702, + "src": "65863:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20716, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20704, + "src": "65867:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20717, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20706, + "src": "65871:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20718, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20708, + "src": "65875:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_660375ddb58761b4ce952ec7e1ae63efe9f8e9e69831fd72875968fec9046e35", + "typeString": "literal_string \"log(address,bool,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20712, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65802:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65802:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65802:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20711, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65786:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65786:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20721, + "nodeType": "ExpressionStatement", + "src": "65786:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65713:3:5", + "parameters": { + "id": 20709, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20702, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65725:2:5", + "nodeType": "VariableDeclaration", + "scope": 20723, + "src": "65717:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20701, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65717:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20704, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65734:2:5", + "nodeType": "VariableDeclaration", + "scope": 20723, + "src": "65729:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20703, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "65729:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20706, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65746:2:5", + "nodeType": "VariableDeclaration", + "scope": 20723, + "src": "65738:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20705, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65738:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20708, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65758:2:5", + "nodeType": "VariableDeclaration", + "scope": 20723, + "src": "65750:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20707, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65750:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "65716:45:5" + }, + "returnParameters": { + "id": 20710, + "nodeType": "ParameterList", + "parameters": [], + "src": "65776:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20746, + "nodeType": "FunctionDefinition", + "src": "65892:188:5", + "body": { + "id": 20745, + "nodeType": "Block", + "src": "65967:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c75696e7432353629", + "id": 20737, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66017:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_be55348107f27daf63b48e87ab23840f2cbf20bdfa1dd4b92b4c2b337967fa25", + "typeString": "literal_string \"log(address,address,uint256,uint256)\"" + }, + "value": "log(address,address,uint256,uint256)" + }, + { + "id": 20738, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20725, + "src": "66057:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20739, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20727, + "src": "66061:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20740, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20729, + "src": "66065:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20741, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20731, + "src": "66069:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_be55348107f27daf63b48e87ab23840f2cbf20bdfa1dd4b92b4c2b337967fa25", + "typeString": "literal_string \"log(address,address,uint256,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20735, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "65993:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20736, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "65993:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65993:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20734, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "65977:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "65977:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20744, + "nodeType": "ExpressionStatement", + "src": "65977:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "65901:3:5", + "parameters": { + "id": 20732, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20725, + "mutability": "mutable", + "name": "p0", + "nameLocation": "65913:2:5", + "nodeType": "VariableDeclaration", + "scope": 20746, + "src": "65905:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20724, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65905:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20727, + "mutability": "mutable", + "name": "p1", + "nameLocation": "65925:2:5", + "nodeType": "VariableDeclaration", + "scope": 20746, + "src": "65917:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20726, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "65917:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20729, + "mutability": "mutable", + "name": "p2", + "nameLocation": "65937:2:5", + "nodeType": "VariableDeclaration", + "scope": 20746, + "src": "65929:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20728, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65929:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20731, + "mutability": "mutable", + "name": "p3", + "nameLocation": "65949:2:5", + "nodeType": "VariableDeclaration", + "scope": 20746, + "src": "65941:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20730, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "65941:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "65904:48:5" + }, + "returnParameters": { + "id": 20733, + "nodeType": "ParameterList", + "parameters": [], + "src": "65967:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20769, + "nodeType": "FunctionDefinition", + "src": "66086:193:5", + "body": { + "id": 20768, + "nodeType": "Block", + "src": "66167:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c737472696e6729", + "id": 20760, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66217:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_fdb4f99053c71d9229026b69fabc5567b4324649a228ca0935bada4975f57343", + "typeString": "literal_string \"log(address,address,uint256,string)\"" + }, + "value": "log(address,address,uint256,string)" + }, + { + "id": 20761, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20748, + "src": "66256:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20762, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20750, + "src": "66260:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20763, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20752, + "src": "66264:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20764, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20754, + "src": "66268:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_fdb4f99053c71d9229026b69fabc5567b4324649a228ca0935bada4975f57343", + "typeString": "literal_string \"log(address,address,uint256,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20758, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66193:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20759, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66193:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20765, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66193:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20757, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "66177:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66177:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20767, + "nodeType": "ExpressionStatement", + "src": "66177:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66095:3:5", + "parameters": { + "id": 20755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20748, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66107:2:5", + "nodeType": "VariableDeclaration", + "scope": 20769, + "src": "66099:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20747, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66099:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20750, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66119:2:5", + "nodeType": "VariableDeclaration", + "scope": 20769, + "src": "66111:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20749, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66111:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20752, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66131:2:5", + "nodeType": "VariableDeclaration", + "scope": 20769, + "src": "66123:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20751, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66123:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20754, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66149:2:5", + "nodeType": "VariableDeclaration", + "scope": 20769, + "src": "66135:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20753, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66135:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "66098:54:5" + }, + "returnParameters": { + "id": 20756, + "nodeType": "ParameterList", + "parameters": [], + "src": "66167:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20792, + "nodeType": "FunctionDefinition", + "src": "66285:182:5", + "body": { + "id": 20791, + "nodeType": "Block", + "src": "66357:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c626f6f6c29", + "id": 20783, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66407:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9b4254e23753cb4c7d637e38638d109b03aeabf8705961d18d943c5bfa6672cd", + "typeString": "literal_string \"log(address,address,uint256,bool)\"" + }, + "value": "log(address,address,uint256,bool)" + }, + { + "id": 20784, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20771, + "src": "66444:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20785, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20773, + "src": "66448:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20786, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20775, + "src": "66452:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20787, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20777, + "src": "66456:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9b4254e23753cb4c7d637e38638d109b03aeabf8705961d18d943c5bfa6672cd", + "typeString": "literal_string \"log(address,address,uint256,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20781, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66383:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66383:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20788, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66383:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20780, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "66367:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66367:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20790, + "nodeType": "ExpressionStatement", + "src": "66367:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66294:3:5", + "parameters": { + "id": 20778, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20771, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66306:2:5", + "nodeType": "VariableDeclaration", + "scope": 20792, + "src": "66298:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20770, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66298:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20773, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66318:2:5", + "nodeType": "VariableDeclaration", + "scope": 20792, + "src": "66310:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20772, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66310:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20775, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66330:2:5", + "nodeType": "VariableDeclaration", + "scope": 20792, + "src": "66322:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20774, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66322:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20777, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66339:2:5", + "nodeType": "VariableDeclaration", + "scope": 20792, + "src": "66334:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20776, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "66334:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "66297:45:5" + }, + "returnParameters": { + "id": 20779, + "nodeType": "ParameterList", + "parameters": [], + "src": "66357:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20815, + "nodeType": "FunctionDefinition", + "src": "66473:188:5", + "body": { + "id": 20814, + "nodeType": "Block", + "src": "66548:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c75696e743235362c6164647265737329", + "id": 20806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66598:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8da6def55c582f2ce59d561e896a66e570478eda5169747a6ea3575cfa60d28b", + "typeString": "literal_string \"log(address,address,uint256,address)\"" + }, + "value": "log(address,address,uint256,address)" + }, + { + "id": 20807, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20794, + "src": "66638:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20808, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20796, + "src": "66642:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20809, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20798, + "src": "66646:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 20810, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20800, + "src": "66650:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8da6def55c582f2ce59d561e896a66e570478eda5169747a6ea3575cfa60d28b", + "typeString": "literal_string \"log(address,address,uint256,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20804, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66574:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20805, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66574:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66574:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20803, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "66558:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20812, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66558:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20813, + "nodeType": "ExpressionStatement", + "src": "66558:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66482:3:5", + "parameters": { + "id": 20801, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20794, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66494:2:5", + "nodeType": "VariableDeclaration", + "scope": 20815, + "src": "66486:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20793, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66486:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20796, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66506:2:5", + "nodeType": "VariableDeclaration", + "scope": 20815, + "src": "66498:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20795, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66498:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20798, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66518:2:5", + "nodeType": "VariableDeclaration", + "scope": 20815, + "src": "66510:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20797, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66510:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20800, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66530:2:5", + "nodeType": "VariableDeclaration", + "scope": 20815, + "src": "66522:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20799, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66522:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "66485:48:5" + }, + "returnParameters": { + "id": 20802, + "nodeType": "ParameterList", + "parameters": [], + "src": "66548:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20838, + "nodeType": "FunctionDefinition", + "src": "66667:193:5", + "body": { + "id": 20837, + "nodeType": "Block", + "src": "66748:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c75696e7432353629", + "id": 20829, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "66798:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ef1cefe7e092dcc5b0ed6bc72a78756f9c352fc002139efb9b181c734d5d45d5", + "typeString": "literal_string \"log(address,address,string,uint256)\"" + }, + "value": "log(address,address,string,uint256)" + }, + { + "id": 20830, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20817, + "src": "66837:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20831, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20819, + "src": "66841:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20832, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20821, + "src": "66845:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20833, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20823, + "src": "66849:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ef1cefe7e092dcc5b0ed6bc72a78756f9c352fc002139efb9b181c734d5d45d5", + "typeString": "literal_string \"log(address,address,string,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20827, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66774:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20828, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66774:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20834, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66774:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20826, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "66758:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20835, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66758:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20836, + "nodeType": "ExpressionStatement", + "src": "66758:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66676:3:5", + "parameters": { + "id": 20824, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20817, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66688:2:5", + "nodeType": "VariableDeclaration", + "scope": 20838, + "src": "66680:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66680:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20819, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66700:2:5", + "nodeType": "VariableDeclaration", + "scope": 20838, + "src": "66692:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20818, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66692:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20821, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66718:2:5", + "nodeType": "VariableDeclaration", + "scope": 20838, + "src": "66704:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20820, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66704:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20823, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66730:2:5", + "nodeType": "VariableDeclaration", + "scope": 20838, + "src": "66722:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20822, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "66722:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "66679:54:5" + }, + "returnParameters": { + "id": 20825, + "nodeType": "ParameterList", + "parameters": [], + "src": "66748:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20861, + "nodeType": "FunctionDefinition", + "src": "66866:198:5", + "body": { + "id": 20860, + "nodeType": "Block", + "src": "66953:111:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c737472696e6729", + "id": 20852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67003:36:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + "value": "log(address,address,string,string)" + }, + { + "id": 20853, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20840, + "src": "67041:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20854, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20842, + "src": "67045:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20855, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20844, + "src": "67049:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20856, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20846, + "src": "67053:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_21bdaf25c85279ffda21e4e2b9f685ff585c62a37c0ebe7ae25670fd06df3aa1", + "typeString": "literal_string \"log(address,address,string,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20850, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "66979:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20851, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "66979:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66979:77:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20849, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "66963:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20858, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "66963:94:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20859, + "nodeType": "ExpressionStatement", + "src": "66963:94:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "66875:3:5", + "parameters": { + "id": 20847, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20840, + "mutability": "mutable", + "name": "p0", + "nameLocation": "66887:2:5", + "nodeType": "VariableDeclaration", + "scope": 20861, + "src": "66879:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20839, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66879:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20842, + "mutability": "mutable", + "name": "p1", + "nameLocation": "66899:2:5", + "nodeType": "VariableDeclaration", + "scope": 20861, + "src": "66891:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20841, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "66891:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20844, + "mutability": "mutable", + "name": "p2", + "nameLocation": "66917:2:5", + "nodeType": "VariableDeclaration", + "scope": 20861, + "src": "66903:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20843, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66903:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20846, + "mutability": "mutable", + "name": "p3", + "nameLocation": "66935:2:5", + "nodeType": "VariableDeclaration", + "scope": 20861, + "src": "66921:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20845, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "66921:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "66878:60:5" + }, + "returnParameters": { + "id": 20848, + "nodeType": "ParameterList", + "parameters": [], + "src": "66953:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20884, + "nodeType": "FunctionDefinition", + "src": "67070:187:5", + "body": { + "id": 20883, + "nodeType": "Block", + "src": "67148:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c626f6f6c29", + "id": 20875, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67198:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + "value": "log(address,address,string,bool)" + }, + { + "id": 20876, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20863, + "src": "67234:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20877, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20865, + "src": "67238:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20878, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20867, + "src": "67242:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20879, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20869, + "src": "67246:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6f1a594e70810560eaae5bbc82bc991f1120ac326ec142f6fb212682169447fd", + "typeString": "literal_string \"log(address,address,string,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20873, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67174:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20874, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67174:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67174:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20872, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "67158:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67158:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20882, + "nodeType": "ExpressionStatement", + "src": "67158:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67079:3:5", + "parameters": { + "id": 20870, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20863, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67091:2:5", + "nodeType": "VariableDeclaration", + "scope": 20884, + "src": "67083:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20862, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67083:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20865, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67103:2:5", + "nodeType": "VariableDeclaration", + "scope": 20884, + "src": "67095:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20864, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67095:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20867, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67121:2:5", + "nodeType": "VariableDeclaration", + "scope": 20884, + "src": "67107:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67107:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20869, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67130:2:5", + "nodeType": "VariableDeclaration", + "scope": 20884, + "src": "67125:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20868, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67125:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "67082:51:5" + }, + "returnParameters": { + "id": 20871, + "nodeType": "ParameterList", + "parameters": [], + "src": "67148:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20907, + "nodeType": "FunctionDefinition", + "src": "67263:193:5", + "body": { + "id": 20906, + "nodeType": "Block", + "src": "67344:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c737472696e672c6164647265737329", + "id": 20898, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67394:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + "value": "log(address,address,string,address)" + }, + { + "id": 20899, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20886, + "src": "67433:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20900, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20888, + "src": "67437:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20901, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20890, + "src": "67441:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 20902, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20892, + "src": "67445:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f736d1685010d3a1ac02ed96109cdd5141fd92077c14203bc63442ad9b6a687", + "typeString": "literal_string \"log(address,address,string,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20896, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67370:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20897, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67370:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20903, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67370:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20895, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "67354:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20904, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67354:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20905, + "nodeType": "ExpressionStatement", + "src": "67354:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67272:3:5", + "parameters": { + "id": 20893, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20886, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67284:2:5", + "nodeType": "VariableDeclaration", + "scope": 20907, + "src": "67276:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20885, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67276:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20888, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67296:2:5", + "nodeType": "VariableDeclaration", + "scope": 20907, + "src": "67288:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20887, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67288:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20890, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67314:2:5", + "nodeType": "VariableDeclaration", + "scope": 20907, + "src": "67300:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20889, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67300:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20892, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67326:2:5", + "nodeType": "VariableDeclaration", + "scope": 20907, + "src": "67318:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20891, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67318:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "67275:54:5" + }, + "returnParameters": { + "id": 20894, + "nodeType": "ParameterList", + "parameters": [], + "src": "67344:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20930, + "nodeType": "FunctionDefinition", + "src": "67462:182:5", + "body": { + "id": 20929, + "nodeType": "Block", + "src": "67534:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c75696e7432353629", + "id": 20921, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67584:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3971e78c267e3c99a8d143ab93f96daa498ed164b55c7e4c2a5439320fbc2671", + "typeString": "literal_string \"log(address,address,bool,uint256)\"" + }, + "value": "log(address,address,bool,uint256)" + }, + { + "id": 20922, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20909, + "src": "67621:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20923, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20911, + "src": "67625:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20924, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20913, + "src": "67629:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20925, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20915, + "src": "67633:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3971e78c267e3c99a8d143ab93f96daa498ed164b55c7e4c2a5439320fbc2671", + "typeString": "literal_string \"log(address,address,bool,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 20919, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67560:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20920, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67560:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67560:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20918, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "67544:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20927, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67544:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20928, + "nodeType": "ExpressionStatement", + "src": "67544:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67471:3:5", + "parameters": { + "id": 20916, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20909, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67483:2:5", + "nodeType": "VariableDeclaration", + "scope": 20930, + "src": "67475:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20908, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67475:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20911, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67495:2:5", + "nodeType": "VariableDeclaration", + "scope": 20930, + "src": "67487:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20910, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67487:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20913, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67504:2:5", + "nodeType": "VariableDeclaration", + "scope": 20930, + "src": "67499:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20912, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67499:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20915, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67516:2:5", + "nodeType": "VariableDeclaration", + "scope": 20930, + "src": "67508:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 20914, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "67508:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "67474:45:5" + }, + "returnParameters": { + "id": 20917, + "nodeType": "ParameterList", + "parameters": [], + "src": "67534:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20953, + "nodeType": "FunctionDefinition", + "src": "67650:187:5", + "body": { + "id": 20952, + "nodeType": "Block", + "src": "67728:109:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c737472696e6729", + "id": 20944, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67778:34:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + "value": "log(address,address,bool,string)" + }, + { + "id": 20945, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20932, + "src": "67814:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20946, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20934, + "src": "67818:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20947, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20936, + "src": "67822:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20948, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20938, + "src": "67826:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_aa6540c8e9a40f69e022e01a14ab22c94aae4999f1d7a246236f464d7c933b88", + "typeString": "literal_string \"log(address,address,bool,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 20942, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67754:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20943, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67754:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67754:75:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20941, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "67738:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20950, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67738:92:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20951, + "nodeType": "ExpressionStatement", + "src": "67738:92:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67659:3:5", + "parameters": { + "id": 20939, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20932, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67671:2:5", + "nodeType": "VariableDeclaration", + "scope": 20953, + "src": "67663:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20931, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67663:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20934, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67683:2:5", + "nodeType": "VariableDeclaration", + "scope": 20953, + "src": "67675:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20933, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67675:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20936, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67692:2:5", + "nodeType": "VariableDeclaration", + "scope": 20953, + "src": "67687:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20935, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67687:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20938, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67710:2:5", + "nodeType": "VariableDeclaration", + "scope": 20953, + "src": "67696:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 20937, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "67696:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "67662:51:5" + }, + "returnParameters": { + "id": 20940, + "nodeType": "ParameterList", + "parameters": [], + "src": "67728:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20976, + "nodeType": "FunctionDefinition", + "src": "67843:176:5", + "body": { + "id": 20975, + "nodeType": "Block", + "src": "67912:107:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c626f6f6c29", + "id": 20967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "67962:32:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + "value": "log(address,address,bool,bool)" + }, + { + "id": 20968, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20955, + "src": "67996:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20969, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20957, + "src": "68000:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20970, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20959, + "src": "68004:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20971, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20961, + "src": "68008:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2cd4134aedbc2cd722f2b9715dc3acb74b16b253590361dd98a4d6cb66119b65", + "typeString": "literal_string \"log(address,address,bool,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 20965, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "67938:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20966, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "67938:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67938:73:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20964, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "67922:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "67922:90:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20974, + "nodeType": "ExpressionStatement", + "src": "67922:90:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "67852:3:5", + "parameters": { + "id": 20962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20955, + "mutability": "mutable", + "name": "p0", + "nameLocation": "67864:2:5", + "nodeType": "VariableDeclaration", + "scope": 20976, + "src": "67856:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20954, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67856:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20957, + "mutability": "mutable", + "name": "p1", + "nameLocation": "67876:2:5", + "nodeType": "VariableDeclaration", + "scope": 20976, + "src": "67868:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20956, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "67868:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20959, + "mutability": "mutable", + "name": "p2", + "nameLocation": "67885:2:5", + "nodeType": "VariableDeclaration", + "scope": 20976, + "src": "67880:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20958, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67880:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20961, + "mutability": "mutable", + "name": "p3", + "nameLocation": "67894:2:5", + "nodeType": "VariableDeclaration", + "scope": 20976, + "src": "67889:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20960, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "67889:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "67855:42:5" + }, + "returnParameters": { + "id": 20963, + "nodeType": "ParameterList", + "parameters": [], + "src": "67912:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 20999, + "nodeType": "FunctionDefinition", + "src": "68025:182:5", + "body": { + "id": 20998, + "nodeType": "Block", + "src": "68097:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c626f6f6c2c6164647265737329", + "id": 20990, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68147:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + "value": "log(address,address,bool,address)" + }, + { + "id": 20991, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20978, + "src": "68184:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20992, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20980, + "src": "68188:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 20993, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20982, + "src": "68192:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 20994, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 20984, + "src": "68196:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9f1bc36e6c1a1385bfe3a230338e478ee5447b81d25d35962aff021b2c578b9c", + "typeString": "literal_string \"log(address,address,bool,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 20988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68123:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 20989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68123:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 20995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68123:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 20987, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "68107:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 20996, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68107:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 20997, + "nodeType": "ExpressionStatement", + "src": "68107:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68034:3:5", + "parameters": { + "id": 20985, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 20978, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68046:2:5", + "nodeType": "VariableDeclaration", + "scope": 20999, + "src": "68038:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20977, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68038:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20980, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68058:2:5", + "nodeType": "VariableDeclaration", + "scope": 20999, + "src": "68050:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20979, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68050:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20982, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68067:2:5", + "nodeType": "VariableDeclaration", + "scope": 20999, + "src": "68062:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 20981, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "68062:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 20984, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68079:2:5", + "nodeType": "VariableDeclaration", + "scope": 20999, + "src": "68071:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 20983, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68071:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "68037:45:5" + }, + "returnParameters": { + "id": 20986, + "nodeType": "ParameterList", + "parameters": [], + "src": "68097:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 21022, + "nodeType": "FunctionDefinition", + "src": "68213:188:5", + "body": { + "id": 21021, + "nodeType": "Block", + "src": "68288:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c75696e7432353629", + "id": 21013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68338:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_94250d77556167cb7a7fd3eb9433101f8af8848163edfced0c46147ba10a2577", + "typeString": "literal_string \"log(address,address,address,uint256)\"" + }, + "value": "log(address,address,address,uint256)" + }, + { + "id": 21014, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21001, + "src": "68378:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21015, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21003, + "src": "68382:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21016, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21005, + "src": "68386:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21017, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21007, + "src": "68390:2:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_94250d77556167cb7a7fd3eb9433101f8af8848163edfced0c46147ba10a2577", + "typeString": "literal_string \"log(address,address,address,uint256)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 21011, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68314:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21012, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68314:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68314:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21010, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "68298:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 21019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68298:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21020, + "nodeType": "ExpressionStatement", + "src": "68298:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68222:3:5", + "parameters": { + "id": 21008, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21001, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68234:2:5", + "nodeType": "VariableDeclaration", + "scope": 21022, + "src": "68226:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21000, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68226:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21003, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68246:2:5", + "nodeType": "VariableDeclaration", + "scope": 21022, + "src": "68238:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21002, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68238:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21005, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68258:2:5", + "nodeType": "VariableDeclaration", + "scope": 21022, + "src": "68250:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21004, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68250:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21007, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68270:2:5", + "nodeType": "VariableDeclaration", + "scope": 21022, + "src": "68262:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 21006, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "68262:7:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "68225:48:5" + }, + "returnParameters": { + "id": 21009, + "nodeType": "ParameterList", + "parameters": [], + "src": "68288:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 21045, + "nodeType": "FunctionDefinition", + "src": "68407:193:5", + "body": { + "id": 21044, + "nodeType": "Block", + "src": "68488:112:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c737472696e6729", + "id": 21036, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68538:37:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + "value": "log(address,address,address,string)" + }, + { + "id": 21037, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21024, + "src": "68577:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21038, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21026, + "src": "68581:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21039, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21028, + "src": "68585:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21040, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21030, + "src": "68589:2:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_f808da2086fed855c3e15d9dbfed3b17a93ed9a59947aae6ab05b7e18576f025", + "typeString": "literal_string \"log(address,address,address,string)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 21034, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68514:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21035, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68514:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68514:78:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21033, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "68498:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 21042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68498:95:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21043, + "nodeType": "ExpressionStatement", + "src": "68498:95:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68416:3:5", + "parameters": { + "id": 21031, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21024, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68428:2:5", + "nodeType": "VariableDeclaration", + "scope": 21045, + "src": "68420:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21023, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68420:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21026, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68440:2:5", + "nodeType": "VariableDeclaration", + "scope": 21045, + "src": "68432:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21025, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68432:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21028, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68452:2:5", + "nodeType": "VariableDeclaration", + "scope": 21045, + "src": "68444:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21027, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68444:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21030, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68470:2:5", + "nodeType": "VariableDeclaration", + "scope": 21045, + "src": "68456:16:5", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 21029, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "68456:6:5", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "68419:54:5" + }, + "returnParameters": { + "id": 21032, + "nodeType": "ParameterList", + "parameters": [], + "src": "68488:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 21068, + "nodeType": "FunctionDefinition", + "src": "68606:182:5", + "body": { + "id": 21067, + "nodeType": "Block", + "src": "68678:110:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c626f6f6c29", + "id": 21059, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68728:35:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + "value": "log(address,address,address,bool)" + }, + { + "id": 21060, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21047, + "src": "68765:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21061, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21049, + "src": "68769:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21062, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21051, + "src": "68773:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21063, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21053, + "src": "68777:2:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e378994a4cd2663acfd73a7ad4e09d196e4fb7ee05b7cdf0708eb30271e2afb", + "typeString": "literal_string \"log(address,address,address,bool)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "expression": { + "id": 21057, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68704:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21058, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68704:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68704:76:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21056, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "68688:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 21065, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68688:93:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21066, + "nodeType": "ExpressionStatement", + "src": "68688:93:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68615:3:5", + "parameters": { + "id": 21054, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21047, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68627:2:5", + "nodeType": "VariableDeclaration", + "scope": 21068, + "src": "68619:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21046, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68619:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21049, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68639:2:5", + "nodeType": "VariableDeclaration", + "scope": 21068, + "src": "68631:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21048, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68631:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21051, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68651:2:5", + "nodeType": "VariableDeclaration", + "scope": 21068, + "src": "68643:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21050, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68643:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21053, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68660:2:5", + "nodeType": "VariableDeclaration", + "scope": 21068, + "src": "68655:7:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 21052, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "68655:4:5", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "68618:45:5" + }, + "returnParameters": { + "id": 21055, + "nodeType": "ParameterList", + "parameters": [], + "src": "68678:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 21091, + "nodeType": "FunctionDefinition", + "src": "68794:188:5", + "body": { + "id": 21090, + "nodeType": "Block", + "src": "68869:113:5", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f6728616464726573732c616464726573732c616464726573732c6164647265737329", + "id": 21082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "68919:38:5", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + "value": "log(address,address,address,address)" + }, + { + "id": 21083, + "name": "p0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21070, + "src": "68959:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21084, + "name": "p1", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21072, + "src": "68963:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21085, + "name": "p2", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21074, + "src": "68967:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 21086, + "name": "p3", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 21076, + "src": "68971:2:5", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_665bf1345e006aa321c0b6b71bed55ce0d6cdd812632f8c43114f62c55ffa0b5", + "typeString": "literal_string \"log(address,address,address,address)\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 21080, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "68895:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21081, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "68895:23:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 21087, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68895:79:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 21079, + "name": "_sendLogPayload", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 13052, + "src": "68879:15:5", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory) view" + } + }, + "id": 21088, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "68879:96:5", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 21089, + "nodeType": "ExpressionStatement", + "src": "68879:96:5" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "log", + "nameLocation": "68803:3:5", + "parameters": { + "id": 21077, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 21070, + "mutability": "mutable", + "name": "p0", + "nameLocation": "68815:2:5", + "nodeType": "VariableDeclaration", + "scope": 21091, + "src": "68807:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21069, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68807:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21072, + "mutability": "mutable", + "name": "p1", + "nameLocation": "68827:2:5", + "nodeType": "VariableDeclaration", + "scope": 21091, + "src": "68819:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21071, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68819:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21074, + "mutability": "mutable", + "name": "p2", + "nameLocation": "68839:2:5", + "nodeType": "VariableDeclaration", + "scope": 21091, + "src": "68831:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21073, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68831:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21076, + "mutability": "mutable", + "name": "p3", + "nameLocation": "68851:2:5", + "nodeType": "VariableDeclaration", + "scope": 21091, + "src": "68843:10:5", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 21075, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "68843:7:5", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "68806:48:5" + }, + "returnParameters": { + "id": 21078, + "nodeType": "ParameterList", + "parameters": [], + "src": "68869:0:5" + }, + "scope": 21092, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "console2", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 21092 + ], + "name": "console2", + "nameLocation": "523:8:5", + "scope": 21093, + "usedErrors": [] + } + ], + "license": "MIT" + }, + "id": 5 +} \ No newline at end of file diff --git a/getting-started/foundry/out/test.sol/DSTest.json b/getting-started/foundry/out/test.sol/DSTest.json new file mode 100644 index 00000000..4657f47a --- /dev/null +++ b/getting-started/foundry/out/test.sol/DSTest.json @@ -0,0 +1,23171 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "log_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "log_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "log_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "log_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "val", + "type": "address" + } + ], + "name": "log_named_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "val", + "type": "bytes" + } + ], + "name": "log_named_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "val", + "type": "bytes32" + } + ], + "name": "log_named_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + } + ], + "name": "log_named_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "val", + "type": "string" + } + ], + "name": "log_named_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + } + ], + "name": "log_named_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "log_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "logs", + "type": "event" + }, + { + "inputs": [], + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": { + "object": "0x60806040526000805460ff1916600117905534801561001d57600080fd5b506102598061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212200a1c3f384a9084dd79e79cf5447b8dcecda3b3226e5bba90345bec7dc18cb76a64736f6c634300080d0033", + "sourceMap": "715:15435:0:-:0;;;1572:26;;;-1:-1:-1;;1572:26:0;1594:4;1572:26;;;715:15435;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063ba414fa61461003b578063fa7626d414610057575b600080fd5b610043610064565b604051901515815260200160405180910390f35b6000546100439060ff1681565b60008054610100900460ff16156100845750600054610100900460ff1690565b6000737109709ecfa91a80626ff3989d68f67f5b1dd12d3b1561018a5760408051737109709ecfa91a80626ff3989d68f67f5b1dd12d602082018190526519985a5b195960d21b82840152825180830384018152606083019093526000929091610112917f667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4916080016101ca565b60408051601f198184030181529082905261012c916101ee565b6000604051808303816000865af19150503d8060008114610169576040519150601f19603f3d011682016040523d82523d6000602084013e61016e565b606091505b50915050808060200190518101906101869190610201565b9150505b919050565b6000815160005b818110156101b05760208185018101518683015201610196565b818111156101bf576000828601525b509290920192915050565b6001600160e01b03198316815260006101e6600483018461018f565b949350505050565b60006101fa828461018f565b9392505050565b60006020828403121561021357600080fd5b815180151581146101fa57600080fdfea26469706673582212200a1c3f384a9084dd79e79cf5447b8dcecda3b3226e5bba90345bec7dc18cb76a64736f6c634300080d0033", + "sourceMap": "715:15435:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1819:584;;;:::i;:::-;;;179:14:9;;172:22;154:41;;142:2;127:18;1819:584:0;;;;;;;1572:26;;;;;;;;;1819:584;1853:4;1873:7;;;;;;;1869:528;;;-1:-1:-1;1903:7:0;;;;;;;;1819:584::o;1869:528::-;1941:17;2990:42;2978:55;3059:16;1980:374;;2196:43;;;1671:64;2196:43;;;380:51:9;;;-1:-1:-1;;;447:18:9;;;440:34;2196:43:0;;;;;;;;;353:18:9;;;2196:43:0;;;-1:-1:-1;;1671:64:0;;2086:175;;2135:34;;2086:175;;;:::i;:::-;;;;-1:-1:-1;;2086:175:0;;;;;;;;;;2047:232;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2020:259;;;2323:7;2312:27;;;;;;;;;;;;:::i;:::-;2297:42;;2002:352;1980:374;2374:12;1819:584;-1:-1:-1;1819:584:0:o;485:336:9:-;526:3;564:5;558:12;588:1;598:128;612:6;609:1;606:13;598:128;;;709:4;694:13;;;690:24;;684:31;671:11;;;664:52;627:12;598:128;;;744:6;741:1;738:13;735:48;;;779:1;770:6;765:3;761:16;754:27;735:48;-1:-1:-1;799:16:9;;;;;485:336;-1:-1:-1;;485:336:9:o;826:278::-;-1:-1:-1;;;;;;1011:33:9;;999:46;;981:3;1061:37;1095:1;1086:11;;1078:6;1061:37;:::i;:::-;1054:44;826:278;-1:-1:-1;;;;826:278:9:o;1109:189::-;1238:3;1263:29;1288:3;1280:6;1263:29;:::i;:::-;1256:36;1109:189;-1:-1:-1;;;1109:189:9:o;1303:277::-;1370:6;1423:2;1411:9;1402:7;1398:23;1394:32;1391:52;;;1439:1;1436;1429:12;1391:52;1471:9;1465:16;1524:5;1517:13;1510:21;1503:5;1500:32;1490:60;;1546:1;1543;1536:12", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_TEST()": "fa7626d4", + "failed()": "ba414fa6" + }, + "ast": { + "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", + "id": 1787, + "exportedSymbols": { + "DSTest": [ + 1786 + ] + }, + "nodeType": "SourceUnit", + "src": "689:15462:0", + "nodes": [ + { + "id": 1, + "nodeType": "PragmaDirective", + "src": "689:24:0", + "literals": [ + "solidity", + ">=", + "0.5", + ".0" + ] + }, + { + "id": 1786, + "nodeType": "ContractDefinition", + "src": "715:15435:0", + "nodes": [ + { + "id": 5, + "nodeType": "EventDefinition", + "src": "737:38:0", + "anonymous": false, + "eventSelector": "41304facd9323d75b11bcdd609cb38effffdb05710f7caf0e9b16c6d9d709f50", + "name": "log", + "nameLocation": "743:3:0", + "parameters": { + "id": 4, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 5, + "src": "767:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "767:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "766:8:0" + } + }, + { + "id": 9, + "nodeType": "EventDefinition", + "src": "780:37:0", + "anonymous": false, + "eventSelector": "e7950ede0394b9f2ce4a5a1bf5a7e1852411f7e6661b4308c913c4bfd11027e4", + "name": "logs", + "nameLocation": "786:4:0", + "parameters": { + "id": 8, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 7, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 9, + "src": "810:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 6, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "810:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "809:7:0" + } + }, + { + "id": 13, + "nodeType": "EventDefinition", + "src": "823:39:0", + "anonymous": false, + "eventSelector": "7ae74c527414ae135fd97047b12921a5ec3911b804197855d67e25c7b75ee6f3", + "name": "log_address", + "nameLocation": "829:11:0", + "parameters": { + "id": 12, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 11, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 13, + "src": "853:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 10, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "853:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "852:9:0" + } + }, + { + "id": 17, + "nodeType": "EventDefinition", + "src": "867:39:0", + "anonymous": false, + "eventSelector": "e81699b85113eea1c73e10588b2b035e55893369632173afd43feb192fac64e3", + "name": "log_bytes32", + "nameLocation": "873:11:0", + "parameters": { + "id": 16, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 15, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 17, + "src": "897:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 14, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "897:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "896:9:0" + } + }, + { + "id": 21, + "nodeType": "EventDefinition", + "src": "911:35:0", + "anonymous": false, + "eventSelector": "0eb5d52624c8d28ada9fc55a8c502ed5aa3fbe2fb6e91b71b5f376882b1d2fb8", + "name": "log_int", + "nameLocation": "917:7:0", + "parameters": { + "id": 20, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 19, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 21, + "src": "941:3:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 18, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "941:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "940:5:0" + } + }, + { + "id": 25, + "nodeType": "EventDefinition", + "src": "951:36:0", + "anonymous": false, + "eventSelector": "2cab9790510fd8bdfbd2115288db33fec66691d476efc5427cfd4c0969301755", + "name": "log_uint", + "nameLocation": "957:8:0", + "parameters": { + "id": 24, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 23, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 25, + "src": "981:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 22, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "981:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "980:6:0" + } + }, + { + "id": 29, + "nodeType": "EventDefinition", + "src": "992:37:0", + "anonymous": false, + "eventSelector": "23b62ad0584d24a75f0bf3560391ef5659ec6db1269c56e11aa241d637f19b20", + "name": "log_bytes", + "nameLocation": "998:9:0", + "parameters": { + "id": 28, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 27, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 29, + "src": "1022:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 26, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1022:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1021:7:0" + } + }, + { + "id": 33, + "nodeType": "EventDefinition", + "src": "1034:38:0", + "anonymous": false, + "eventSelector": "0b2e13ff20ac7b474198655583edf70dedd2c1dc980e329c4fbb2fc0748b796b", + "name": "log_string", + "nameLocation": "1040:10:0", + "parameters": { + "id": 32, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 31, + "indexed": false, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 33, + "src": "1064:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 30, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1064:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1063:8:0" + } + }, + { + "id": 39, + "nodeType": "EventDefinition", + "src": "1078:55:0", + "anonymous": false, + "eventSelector": "9c4e8541ca8f0dc1c413f9108f66d82d3cecb1bddbce437a61caa3175c4cc96f", + "name": "log_named_address", + "nameLocation": "1084:17:0", + "parameters": { + "id": 38, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 35, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1115:3:0", + "nodeType": "VariableDeclaration", + "scope": 39, + "src": "1108:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 34, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1108:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 37, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1128:3:0", + "nodeType": "VariableDeclaration", + "scope": 39, + "src": "1120:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 36, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1120:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1107:25:0" + } + }, + { + "id": 45, + "nodeType": "EventDefinition", + "src": "1138:55:0", + "anonymous": false, + "eventSelector": "afb795c9c61e4fe7468c386f925d7a5429ecad9c0495ddb8d38d690614d32f99", + "name": "log_named_bytes32", + "nameLocation": "1144:17:0", + "parameters": { + "id": 44, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 41, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1175:3:0", + "nodeType": "VariableDeclaration", + "scope": 45, + "src": "1168:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 40, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1168:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 43, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1188:3:0", + "nodeType": "VariableDeclaration", + "scope": 45, + "src": "1180:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 42, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "1180:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "1167:25:0" + } + }, + { + "id": 53, + "nodeType": "EventDefinition", + "src": "1198:66:0", + "anonymous": false, + "eventSelector": "5da6ce9d51151ba10c09a559ef24d520b9dac5c5b8810ae8434e4d0d86411a95", + "name": "log_named_decimal_int", + "nameLocation": "1204:21:0", + "parameters": { + "id": 52, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 47, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1235:3:0", + "nodeType": "VariableDeclaration", + "scope": 53, + "src": "1228:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 46, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1228:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 49, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1244:3:0", + "nodeType": "VariableDeclaration", + "scope": 53, + "src": "1240:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 48, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "1240:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 51, + "indexed": false, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "1254:8:0", + "nodeType": "VariableDeclaration", + "scope": 53, + "src": "1249:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 50, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1249:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1227:36:0" + } + }, + { + "id": 61, + "nodeType": "EventDefinition", + "src": "1269:67:0", + "anonymous": false, + "eventSelector": "eb8ba43ced7537421946bd43e828b8b2b8428927aa8f801c13d934bf11aca57b", + "name": "log_named_decimal_uint", + "nameLocation": "1275:22:0", + "parameters": { + "id": 60, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 55, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1306:3:0", + "nodeType": "VariableDeclaration", + "scope": 61, + "src": "1299:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 54, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1299:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 57, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1316:3:0", + "nodeType": "VariableDeclaration", + "scope": 61, + "src": "1311:8:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 56, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1311:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 59, + "indexed": false, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "1326:8:0", + "nodeType": "VariableDeclaration", + "scope": 61, + "src": "1321:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 58, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1321:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1298:37:0" + } + }, + { + "id": 67, + "nodeType": "EventDefinition", + "src": "1341:51:0", + "anonymous": false, + "eventSelector": "2fe632779174374378442a8e978bccfbdcc1d6b2b0d81f7e8eb776ab2286f168", + "name": "log_named_int", + "nameLocation": "1347:13:0", + "parameters": { + "id": 66, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 63, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1378:3:0", + "nodeType": "VariableDeclaration", + "scope": 67, + "src": "1371:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 62, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1371:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 65, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1387:3:0", + "nodeType": "VariableDeclaration", + "scope": 67, + "src": "1383:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 64, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "1383:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "1370:21:0" + } + }, + { + "id": 73, + "nodeType": "EventDefinition", + "src": "1397:52:0", + "anonymous": false, + "eventSelector": "b2de2fbe801a0df6c0cbddfd448ba3c41d48a040ca35c56c8196ef0fcae721a8", + "name": "log_named_uint", + "nameLocation": "1403:14:0", + "parameters": { + "id": 72, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 69, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1434:3:0", + "nodeType": "VariableDeclaration", + "scope": 73, + "src": "1427:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 68, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1427:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 71, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1444:3:0", + "nodeType": "VariableDeclaration", + "scope": 73, + "src": "1439:8:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 70, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "1439:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1426:22:0" + } + }, + { + "id": 79, + "nodeType": "EventDefinition", + "src": "1454:53:0", + "anonymous": false, + "eventSelector": "d26e16cad4548705e4c9e2d94f98ee91c289085ee425594fd5635fa2964ccf18", + "name": "log_named_bytes", + "nameLocation": "1460:15:0", + "parameters": { + "id": 78, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 75, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1491:3:0", + "nodeType": "VariableDeclaration", + "scope": 79, + "src": "1484:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 74, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1484:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 77, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1502:3:0", + "nodeType": "VariableDeclaration", + "scope": 79, + "src": "1496:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 76, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "1496:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "1483:23:0" + } + }, + { + "id": 85, + "nodeType": "EventDefinition", + "src": "1512:54:0", + "anonymous": false, + "eventSelector": "280f4446b28a1372417dda658d30b95b2992b12ac9c7f378535f29a97acf3583", + "name": "log_named_string", + "nameLocation": "1518:16:0", + "parameters": { + "id": 84, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 81, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "1549:3:0", + "nodeType": "VariableDeclaration", + "scope": 85, + "src": "1542:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 80, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1542:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 83, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "1561:3:0", + "nodeType": "VariableDeclaration", + "scope": 85, + "src": "1554:10:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 82, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1554:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1541:24:0" + } + }, + { + "id": 88, + "nodeType": "VariableDeclaration", + "src": "1572:26:0", + "constant": false, + "functionSelector": "fa7626d4", + "mutability": "mutable", + "name": "IS_TEST", + "nameLocation": "1584:7:0", + "scope": 1786, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 86, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1572:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": { + "hexValue": "74727565", + "id": 87, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1594:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "visibility": "public" + }, + { + "id": 90, + "nodeType": "VariableDeclaration", + "src": "1604:20:0", + "constant": false, + "mutability": "mutable", + "name": "_failed", + "nameLocation": "1617:7:0", + "scope": 1786, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 89, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1604:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "private" + }, + { + "id": 107, + "nodeType": "VariableDeclaration", + "src": "1631:104:0", + "constant": true, + "mutability": "constant", + "name": "HEVM_ADDRESS", + "nameLocation": "1648:12:0", + "scope": 1786, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 91, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1631:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 101, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1713:17:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 100, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "1703:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 102, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1703:28:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 99, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1695:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 98, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1695:7:0", + "typeDescriptions": {} + } + }, + "id": 103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1695:37:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 97, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1687:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 96, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "1687:7:0", + "typeDescriptions": {} + } + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1687:46:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 95, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1679:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes20_$", + "typeString": "type(bytes20)" + }, + "typeName": { + "id": 94, + "name": "bytes20", + "nodeType": "ElementaryTypeName", + "src": "1679:7:0", + "typeDescriptions": {} + } + }, + "id": 105, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1679:55:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes20", + "typeString": "bytes20" + } + ], + "id": 93, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "1671:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 92, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1671:7:0", + "typeDescriptions": {} + } + }, + "id": 106, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1671:64:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "id": 111, + "nodeType": "ModifierDefinition", + "src": "1742:27:0", + "body": { + "id": 110, + "nodeType": "Block", + "src": "1763:6:0", + "statements": [ + { + "id": 109, + "nodeType": "PlaceholderStatement", + "src": "1765:1:0" + } + ] + }, + "name": "mayRevert", + "nameLocation": "1751:9:0", + "parameters": { + "id": 108, + "nodeType": "ParameterList", + "parameters": [], + "src": "1760:2:0" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 117, + "nodeType": "ModifierDefinition", + "src": "1774:39:0", + "body": { + "id": 116, + "nodeType": "Block", + "src": "1807:6:0", + "statements": [ + { + "id": 115, + "nodeType": "PlaceholderStatement", + "src": "1809:1:0" + } + ] + }, + "name": "testopts", + "nameLocation": "1783:8:0", + "parameters": { + "id": 114, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 113, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 117, + "src": "1792:13:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 112, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "1792:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "1791:15:0" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 172, + "nodeType": "FunctionDefinition", + "src": "1819:584:0", + "body": { + "id": 171, + "nodeType": "Block", + "src": "1859:544:0", + "statements": [ + { + "condition": { + "id": 122, + "name": "_failed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "1873:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 169, + "nodeType": "Block", + "src": "1927:470:0", + "statements": [ + { + "assignments": [ + 127 + ], + "declarations": [ + { + "constant": false, + "id": 127, + "mutability": "mutable", + "name": "globalFailed", + "nameLocation": "1946:12:0", + "nodeType": "VariableDeclaration", + "scope": 169, + "src": "1941:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 126, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1941:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 129, + "initialValue": { + "hexValue": "66616c7365", + "id": 128, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1961:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1941:25:0" + }, + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 130, + "name": "hasHEVMContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 231, + "src": "1984:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1984:16:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 166, + "nodeType": "IfStatement", + "src": "1980:374:0", + "trueBody": { + "id": 165, + "nodeType": "Block", + "src": "2002:352:0", + "statements": [ + { + "assignments": [ + null, + 133 + ], + "declarations": [ + null, + { + "constant": false, + "id": 133, + "mutability": "mutable", + "name": "retdata", + "nameLocation": "2036:7:0", + "nodeType": "VariableDeclaration", + "scope": 165, + "src": "2023:20:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 132, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "2023:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 154, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6c6f616428616464726573732c6279746573333229", + "id": 141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2145:23:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4", + "typeString": "literal_string \"load(address,bytes32)\"" + }, + "value": "load(address,bytes32)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_667f9d70ca411d70ead50d8d5c22070dafc36ad75f3dcf5e7237b22ade9aecc4", + "typeString": "literal_string \"load(address,bytes32)\"" + } + ], + "id": 140, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2135:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2135:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 139, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2128:6:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 138, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2128:6:0", + "typeDescriptions": {} + } + }, + "id": 143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2128:42:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 146, + "name": "HEVM_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 107, + "src": "2207:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "6661696c6564", + "id": 149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2229:8:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", + "typeString": "literal_string \"failed\"" + }, + "value": "failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", + "typeString": "literal_string \"failed\"" + } + ], + "id": 148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2221:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 147, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2221:7:0", + "typeDescriptions": {} + } + }, + "id": 150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2221:17:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 144, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2196:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 145, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "2196:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 151, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2196:43:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 136, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2086:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 137, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2086:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2086:175:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 134, + "name": "HEVM_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 107, + "src": "2047:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 135, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "2047:17:0", + "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": 153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2047:232:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2020:259:0" + }, + { + "expression": { + "id": 163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 155, + "name": "globalFailed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "2297:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 158, + "name": "retdata", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 133, + "src": "2323:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 160, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2333:4:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bool_$", + "typeString": "type(bool)" + }, + "typeName": { + "id": 159, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2333:4:0", + "typeDescriptions": {} + } + } + ], + "id": 161, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "2332:6:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bool_$", + "typeString": "type(bool)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_bool_$", + "typeString": "type(bool)" + } + ], + "expression": { + "id": 156, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2312:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "2312:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 162, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2312:27:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "2297:42:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 164, + "nodeType": "ExpressionStatement", + "src": "2297:42:0" + } + ] + } + }, + { + "expression": { + "id": 167, + "name": "globalFailed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 127, + "src": "2374:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 121, + "id": 168, + "nodeType": "Return", + "src": "2367:19:0" + } + ] + }, + "id": 170, + "nodeType": "IfStatement", + "src": "1869:528:0", + "trueBody": { + "id": 125, + "nodeType": "Block", + "src": "1882:39:0", + "statements": [ + { + "expression": { + "id": 123, + "name": "_failed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "1903:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 121, + "id": 124, + "nodeType": "Return", + "src": "1896:14:0" + } + ] + } + } + ] + }, + "functionSelector": "ba414fa6", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "failed", + "nameLocation": "1828:6:0", + "parameters": { + "id": 118, + "nodeType": "ParameterList", + "parameters": [], + "src": "1834:2:0" + }, + "returnParameters": { + "id": 121, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 120, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 172, + "src": "1853:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 119, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1853:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1852:6:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 216, + "nodeType": "FunctionDefinition", + "src": "2410:424:0", + "body": { + "id": 215, + "nodeType": "Block", + "src": "2435:399:0", + "statements": [ + { + "condition": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 175, + "name": "hasHEVMContext", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 231, + "src": "2449:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$__$returns$_t_bool_$", + "typeString": "function () view returns (bool)" + } + }, + "id": 176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2449:16:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 210, + "nodeType": "IfStatement", + "src": "2445:359:0", + "trueBody": { + "id": 209, + "nodeType": "Block", + "src": "2467:337:0", + "statements": [ + { + "assignments": [ + 178, + null + ], + "declarations": [ + { + "constant": false, + "id": 178, + "mutability": "mutable", + "name": "status", + "nameLocation": "2487:6:0", + "nodeType": "VariableDeclaration", + "scope": 209, + "src": "2482:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 177, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2482:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + null + ], + "id": 206, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "73746f726528616464726573732c627974657333322c6279746573333229", + "id": 186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2589:32:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4", + "typeString": "literal_string \"store(address,bytes32,bytes32)\"" + }, + "value": "store(address,bytes32,bytes32)" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_70ca10bbd0dbfd9020a9f4b13402c16cb120705e0d1c0aeab10fa353ae586fc4", + "typeString": "literal_string \"store(address,bytes32,bytes32)\"" + } + ], + "id": 185, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "2579:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 187, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2579:43:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2572:6:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 183, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "2572:6:0", + "typeDescriptions": {} + } + }, + "id": 188, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2572:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 191, + "name": "HEVM_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 107, + "src": "2656:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "hexValue": "6661696c6564", + "id": 194, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2678:8:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", + "typeString": "literal_string \"failed\"" + }, + "value": "failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8f44d68b1a26169d304522fa2f95aa938d98120d628d1db5726120ca84e53b43", + "typeString": "literal_string \"failed\"" + } + ], + "id": 193, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2670:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 192, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2670:7:0", + "typeDescriptions": {} + } + }, + "id": 195, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2670:17:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783031", + "id": 200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2705:4:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "id": 199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2697:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 198, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2697:7:0", + "typeDescriptions": {} + } + }, + "id": 201, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2697:13:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2689:7:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 196, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "2689:7:0", + "typeDescriptions": {} + } + }, + "id": 202, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2689:22:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 189, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2645:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "2645:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2645:67:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "2534:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "2534:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2534:196:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 179, + "name": "HEVM_ADDRESS", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 107, + "src": "2499:12:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "2499:17:0", + "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": 205, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2499:245:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2481:263:0" + }, + { + "expression": { + "id": 207, + "name": "status", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 178, + "src": "2758:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 208, + "nodeType": "ExpressionStatement", + "src": "2758:6:0" + } + ] + } + }, + { + "expression": { + "id": 213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 211, + "name": "_failed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "2813:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 212, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2823:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "2813:14:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 214, + "nodeType": "ExpressionStatement", + "src": "2813:14:0" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fail", + "nameLocation": "2419:4:0", + "parameters": { + "id": 173, + "nodeType": "ParameterList", + "parameters": [], + "src": "2423:2:0" + }, + "returnParameters": { + "id": 174, + "nodeType": "ParameterList", + "parameters": [], + "src": "2435:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 231, + "nodeType": "FunctionDefinition", + "src": "2840:242:0", + "body": { + "id": 230, + "nodeType": "Block", + "src": "2895:187:0", + "statements": [ + { + "assignments": [ + 222 + ], + "declarations": [ + { + "constant": false, + "id": 222, + "mutability": "mutable", + "name": "hevmCodeSize", + "nameLocation": "2913:12:0", + "nodeType": "VariableDeclaration", + "scope": 230, + "src": "2905:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 221, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2905:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 224, + "initialValue": { + "hexValue": "30", + "id": 223, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2928:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2905:24:0" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "2948:95:0", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2962:71:0", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2990:42:0", + "type": "", + "value": "0x7109709ECfa91a80626fF3989D68f67F5b1DD12D" + } + ], + "functionName": { + "name": "extcodesize", + "nodeType": "YulIdentifier", + "src": "2978:11:0" + }, + "nodeType": "YulFunctionCall", + "src": "2978:55:0" + }, + "variableNames": [ + { + "name": "hevmCodeSize", + "nodeType": "YulIdentifier", + "src": "2962:12:0" + } + ] + } + ] + }, + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 222, + "isOffset": false, + "isSlot": false, + "src": "2962:12:0", + "valueSize": 1 + } + ], + "id": 225, + "nodeType": "InlineAssembly", + "src": "2939:104:0" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 228, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 226, + "name": "hevmCodeSize", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 222, + "src": "3059:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "30", + "id": 227, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3074:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3059:16:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 220, + "id": 229, + "nodeType": "Return", + "src": "3052:23:0" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hasHEVMContext", + "nameLocation": "2849:14:0", + "parameters": { + "id": 217, + "nodeType": "ParameterList", + "parameters": [], + "src": "2863:2:0" + }, + "returnParameters": { + "id": 220, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 219, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 231, + "src": "2889:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 218, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "2889:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "2888:6:0" + }, + "scope": 1786, + "stateMutability": "view", + "virtual": false, + "visibility": "internal" + }, + { + "id": 252, + "nodeType": "ModifierDefinition", + "src": "3088:161:0", + "body": { + "id": 251, + "nodeType": "Block", + "src": "3108:141:0", + "statements": [ + { + "assignments": [ + 234 + ], + "declarations": [ + { + "constant": false, + "id": 234, + "mutability": "mutable", + "name": "startGas", + "nameLocation": "3123:8:0", + "nodeType": "VariableDeclaration", + "scope": 251, + "src": "3118:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 233, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3118:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 237, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 235, + "name": "gasleft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -7, + "src": "3134:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3134:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3118:25:0" + }, + { + "id": 238, + "nodeType": "PlaceholderStatement", + "src": "3153:1:0" + }, + { + "assignments": [ + 240 + ], + "declarations": [ + { + "constant": false, + "id": 240, + "mutability": "mutable", + "name": "endGas", + "nameLocation": "3169:6:0", + "nodeType": "VariableDeclaration", + "scope": 251, + "src": "3164:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 239, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "3164:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 243, + "initialValue": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 241, + "name": "gasleft", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -7, + "src": "3178:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_gasleft_view$__$returns$_t_uint256_$", + "typeString": "function () view returns (uint256)" + } + }, + "id": 242, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3178:9:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3164:23:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "676173", + "id": 245, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3217:5:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", + "typeString": "literal_string \"gas\"" + }, + "value": "gas" + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 248, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 246, + "name": "startGas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 234, + "src": "3224:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 247, + "name": "endGas", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 240, + "src": "3235:6:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3224:17:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4498c2139ad6cf2beef3ae7bec34c4856d471c8680dfd28d553f117df74df6b7", + "typeString": "literal_string \"gas\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 244, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "3202:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3202:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 250, + "nodeType": "EmitStatement", + "src": "3197:45:0" + } + ] + }, + "name": "logs_gas", + "nameLocation": "3097:8:0", + "parameters": { + "id": 232, + "nodeType": "ParameterList", + "parameters": [], + "src": "3105:2:0" + }, + "virtual": false, + "visibility": "internal" + }, + { + "id": 269, + "nodeType": "FunctionDefinition", + "src": "3255:157:0", + "body": { + "id": 268, + "nodeType": "Block", + "src": "3300:112:0", + "statements": [ + { + "condition": { + "id": 258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "3314:10:0", + "subExpression": { + "id": 257, + "name": "condition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 254, + "src": "3315:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 267, + "nodeType": "IfStatement", + "src": "3310:96:0", + "trueBody": { + "id": 266, + "nodeType": "Block", + "src": "3326:80:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a20417373657274696f6e204661696c6564", + "id": 260, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3349:25:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cc8bd7d7034d6f139e4d0b1fc61bcb3025672e801833991d94fa7390aceb1687", + "typeString": "literal_string \"Error: Assertion Failed\"" + }, + "value": "Error: Assertion Failed" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cc8bd7d7034d6f139e4d0b1fc61bcb3025672e801833991d94fa7390aceb1687", + "typeString": "literal_string \"Error: Assertion Failed\"" + } + ], + "id": 259, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "3345:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3345:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 262, + "nodeType": "EmitStatement", + "src": "3340:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 263, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "3389:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 264, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3389:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 265, + "nodeType": "ExpressionStatement", + "src": "3389:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertTrue", + "nameLocation": "3264:10:0", + "parameters": { + "id": 255, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 254, + "mutability": "mutable", + "name": "condition", + "nameLocation": "3280:9:0", + "nodeType": "VariableDeclaration", + "scope": 269, + "src": "3275:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 253, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3275:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3274:16:0" + }, + "returnParameters": { + "id": 256, + "nodeType": "ParameterList", + "parameters": [], + "src": "3300:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 290, + "nodeType": "FunctionDefinition", + "src": "3418:191:0", + "body": { + "id": 289, + "nodeType": "Block", + "src": "3482:127:0", + "statements": [ + { + "condition": { + "id": 277, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "3496:10:0", + "subExpression": { + "id": 276, + "name": "condition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 271, + "src": "3497:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 288, + "nodeType": "IfStatement", + "src": "3492:111:0", + "trueBody": { + "id": 287, + "nodeType": "Block", + "src": "3508:95:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3544:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 280, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 273, + "src": "3553:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 278, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "3527:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3527:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 282, + "nodeType": "EmitStatement", + "src": "3522:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 284, + "name": "condition", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 271, + "src": "3582:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 283, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "3571:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3571:21:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 286, + "nodeType": "ExpressionStatement", + "src": "3571:21:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertTrue", + "nameLocation": "3427:10:0", + "parameters": { + "id": 274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 271, + "mutability": "mutable", + "name": "condition", + "nameLocation": "3443:9:0", + "nodeType": "VariableDeclaration", + "scope": 290, + "src": "3438:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 270, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3438:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 273, + "mutability": "mutable", + "name": "err", + "nameLocation": "3468:3:0", + "nodeType": "VariableDeclaration", + "scope": 290, + "src": "3454:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 272, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3454:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3437:35:0" + }, + "returnParameters": { + "id": 275, + "nodeType": "ParameterList", + "parameters": [], + "src": "3482:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 320, + "nodeType": "FunctionDefinition", + "src": "3615:277:0", + "body": { + "id": 319, + "nodeType": "Block", + "src": "3664:228:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 299, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 297, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 292, + "src": "3678:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 298, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 294, + "src": "3683:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3678:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 318, + "nodeType": "IfStatement", + "src": "3674:212:0", + "trueBody": { + "id": 317, + "nodeType": "Block", + "src": "3686:200:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735d", + "id": 301, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3709:39:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9fc6ddd126630392f6812bf6b1418b5ec062ae84acc54ee474317255c7d57017", + "typeString": "literal_string \"Error: a == b not satisfied [address]\"" + }, + "value": "Error: a == b not satisfied [address]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9fc6ddd126630392f6812bf6b1418b5ec062ae84acc54ee474317255c7d57017", + "typeString": "literal_string \"Error: a == b not satisfied [address]\"" + } + ], + "id": 300, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "3705:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 302, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3705:44:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 303, + "nodeType": "EmitStatement", + "src": "3700:49:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 305, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3786:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 306, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 294, + "src": "3800:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 304, + "name": "log_named_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 39, + "src": "3768:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address)" + } + }, + "id": 307, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3768:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 308, + "nodeType": "EmitStatement", + "src": "3763:39:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 310, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3839:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 311, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 292, + "src": "3853:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 309, + "name": "log_named_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 39, + "src": "3821:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_address_$returns$__$", + "typeString": "function (string memory,address)" + } + }, + "id": 312, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3821:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 313, + "nodeType": "EmitStatement", + "src": "3816:39:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 314, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "3869:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 315, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3869:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 316, + "nodeType": "ExpressionStatement", + "src": "3869:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "3624:8:0", + "parameters": { + "id": 295, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 292, + "mutability": "mutable", + "name": "a", + "nameLocation": "3641:1:0", + "nodeType": "VariableDeclaration", + "scope": 320, + "src": "3633:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 291, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3633:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 294, + "mutability": "mutable", + "name": "b", + "nameLocation": "3652:1:0", + "nodeType": "VariableDeclaration", + "scope": 320, + "src": "3644:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 293, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3644:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3632:22:0" + }, + "returnParameters": { + "id": 296, + "nodeType": "ParameterList", + "parameters": [], + "src": "3664:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 345, + "nodeType": "FunctionDefinition", + "src": "3897:185:0", + "body": { + "id": 344, + "nodeType": "Block", + "src": "3965:117:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 331, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 329, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 322, + "src": "3979:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 330, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "3984:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "3979:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 343, + "nodeType": "IfStatement", + "src": "3975:101:0", + "trueBody": { + "id": 342, + "nodeType": "Block", + "src": "3987:89:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 333, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4024:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 334, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 326, + "src": "4033:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 332, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "4006:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4006:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 336, + "nodeType": "EmitStatement", + "src": "4001:36:0" + }, + { + "expression": { + "arguments": [ + { + "id": 338, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 322, + "src": "4060:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 339, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 324, + "src": "4063:1:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 337, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 320, + "src": "4051:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 340, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4051:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 341, + "nodeType": "ExpressionStatement", + "src": "4051:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "3906:8:0", + "parameters": { + "id": 327, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 322, + "mutability": "mutable", + "name": "a", + "nameLocation": "3923:1:0", + "nodeType": "VariableDeclaration", + "scope": 345, + "src": "3915:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 321, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3915:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 324, + "mutability": "mutable", + "name": "b", + "nameLocation": "3934:1:0", + "nodeType": "VariableDeclaration", + "scope": 345, + "src": "3926:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 323, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3926:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 326, + "mutability": "mutable", + "name": "err", + "nameLocation": "3951:3:0", + "nodeType": "VariableDeclaration", + "scope": 345, + "src": "3937:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 325, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "3937:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "3914:41:0" + }, + "returnParameters": { + "id": 328, + "nodeType": "ParameterList", + "parameters": [], + "src": "3965:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 375, + "nodeType": "FunctionDefinition", + "src": "4088:277:0", + "body": { + "id": 374, + "nodeType": "Block", + "src": "4137:228:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 354, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 352, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 347, + "src": "4151:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 353, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "4156:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "4151:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 373, + "nodeType": "IfStatement", + "src": "4147:212:0", + "trueBody": { + "id": 372, + "nodeType": "Block", + "src": "4159:200:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b627974657333325d", + "id": 356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4182:39:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6605dedc99dd4e0a76d4678a99cc6956499fe2b523ca6525b248ca3582cef3ef", + "typeString": "literal_string \"Error: a == b not satisfied [bytes32]\"" + }, + "value": "Error: a == b not satisfied [bytes32]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6605dedc99dd4e0a76d4678a99cc6956499fe2b523ca6525b248ca3582cef3ef", + "typeString": "literal_string \"Error: a == b not satisfied [bytes32]\"" + } + ], + "id": 355, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "4178:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4178:44:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 358, + "nodeType": "EmitStatement", + "src": "4173:49:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 360, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4259:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 361, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 349, + "src": "4273:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 359, + "name": "log_named_bytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45, + "src": "4241:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (string memory,bytes32)" + } + }, + "id": 362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4241:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 363, + "nodeType": "EmitStatement", + "src": "4236:39:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 365, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4312:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 366, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 347, + "src": "4326:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 364, + "name": "log_named_bytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 45, + "src": "4294:17:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (string memory,bytes32)" + } + }, + "id": 367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4294:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 368, + "nodeType": "EmitStatement", + "src": "4289:39:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 369, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "4342:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4342:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 371, + "nodeType": "ExpressionStatement", + "src": "4342:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "4097:8:0", + "parameters": { + "id": 350, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 347, + "mutability": "mutable", + "name": "a", + "nameLocation": "4114:1:0", + "nodeType": "VariableDeclaration", + "scope": 375, + "src": "4106:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 346, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4106:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 349, + "mutability": "mutable", + "name": "b", + "nameLocation": "4125:1:0", + "nodeType": "VariableDeclaration", + "scope": 375, + "src": "4117:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 348, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4117:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4105:22:0" + }, + "returnParameters": { + "id": 351, + "nodeType": "ParameterList", + "parameters": [], + "src": "4137:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 400, + "nodeType": "FunctionDefinition", + "src": "4370:185:0", + "body": { + "id": 399, + "nodeType": "Block", + "src": "4438:117:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 384, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 377, + "src": "4452:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 385, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 379, + "src": "4457:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "4452:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 398, + "nodeType": "IfStatement", + "src": "4448:101:0", + "trueBody": { + "id": 397, + "nodeType": "Block", + "src": "4460:89:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 388, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4497:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 389, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 381, + "src": "4506:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 387, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "4479:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4479:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 391, + "nodeType": "EmitStatement", + "src": "4474:36:0" + }, + { + "expression": { + "arguments": [ + { + "id": 393, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 377, + "src": "4533:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 394, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 379, + "src": "4536:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 392, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 375, + "src": "4524:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32)" + } + }, + "id": 395, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4524:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 396, + "nodeType": "ExpressionStatement", + "src": "4524:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "4379:8:0", + "parameters": { + "id": 382, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 377, + "mutability": "mutable", + "name": "a", + "nameLocation": "4396:1:0", + "nodeType": "VariableDeclaration", + "scope": 400, + "src": "4388:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 376, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4388:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 379, + "mutability": "mutable", + "name": "b", + "nameLocation": "4407:1:0", + "nodeType": "VariableDeclaration", + "scope": 400, + "src": "4399:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 378, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4399:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 381, + "mutability": "mutable", + "name": "err", + "nameLocation": "4424:3:0", + "nodeType": "VariableDeclaration", + "scope": 400, + "src": "4410:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 380, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4410:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4387:41:0" + }, + "returnParameters": { + "id": 383, + "nodeType": "ParameterList", + "parameters": [], + "src": "4438:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 413, + "nodeType": "FunctionDefinition", + "src": "4560:82:0", + "body": { + "id": 412, + "nodeType": "Block", + "src": "4611:31:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 408, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 402, + "src": "4630:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 409, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 404, + "src": "4633:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 407, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 375, + "src": "4621:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (bytes32,bytes32)" + } + }, + "id": 410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4621:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 411, + "nodeType": "ExpressionStatement", + "src": "4621:14:0" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq32", + "nameLocation": "4569:10:0", + "parameters": { + "id": 405, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 402, + "mutability": "mutable", + "name": "a", + "nameLocation": "4588:1:0", + "nodeType": "VariableDeclaration", + "scope": 413, + "src": "4580:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 401, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4580:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 404, + "mutability": "mutable", + "name": "b", + "nameLocation": "4599:1:0", + "nodeType": "VariableDeclaration", + "scope": 413, + "src": "4591:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 403, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4591:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "4579:22:0" + }, + "returnParameters": { + "id": 406, + "nodeType": "ParameterList", + "parameters": [], + "src": "4611:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 429, + "nodeType": "FunctionDefinition", + "src": "4647:106:0", + "body": { + "id": 428, + "nodeType": "Block", + "src": "4717:36:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 423, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 415, + "src": "4736:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 424, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 417, + "src": "4739:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 425, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 419, + "src": "4742:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 422, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 400, + "src": "4727:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes32,bytes32,string memory)" + } + }, + "id": 426, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4727:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 427, + "nodeType": "ExpressionStatement", + "src": "4727:19:0" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq32", + "nameLocation": "4656:10:0", + "parameters": { + "id": 420, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 415, + "mutability": "mutable", + "name": "a", + "nameLocation": "4675:1:0", + "nodeType": "VariableDeclaration", + "scope": 429, + "src": "4667:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 414, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4667:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 417, + "mutability": "mutable", + "name": "b", + "nameLocation": "4686:1:0", + "nodeType": "VariableDeclaration", + "scope": 429, + "src": "4678:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 416, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "4678:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 419, + "mutability": "mutable", + "name": "err", + "nameLocation": "4703:3:0", + "nodeType": "VariableDeclaration", + "scope": 429, + "src": "4689:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 418, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "4689:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "4666:41:0" + }, + "returnParameters": { + "id": 421, + "nodeType": "ParameterList", + "parameters": [], + "src": "4717:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 459, + "nodeType": "FunctionDefinition", + "src": "4759:257:0", + "body": { + "id": 458, + "nodeType": "Block", + "src": "4800:216:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 436, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 431, + "src": "4814:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 437, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 433, + "src": "4819:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "4814:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 457, + "nodeType": "IfStatement", + "src": "4810:200:0", + "trueBody": { + "id": 456, + "nodeType": "Block", + "src": "4822:188:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745d", + "id": 440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4845:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c510d1b16a7b86013fe25431f855bed96290957b4566f7ab53d5bf1855a3a81", + "typeString": "literal_string \"Error: a == b not satisfied [int]\"" + }, + "value": "Error: a == b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c510d1b16a7b86013fe25431f855bed96290957b4566f7ab53d5bf1855a3a81", + "typeString": "literal_string \"Error: a == b not satisfied [int]\"" + } + ], + "id": 439, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "4841:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4841:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 442, + "nodeType": "EmitStatement", + "src": "4836:45:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 444, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4914:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 445, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 433, + "src": "4928:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 443, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "4900:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 446, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4900:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 447, + "nodeType": "EmitStatement", + "src": "4895:35:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 449, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4963:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 450, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 431, + "src": "4977:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 448, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "4949:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4949:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 452, + "nodeType": "EmitStatement", + "src": "4944:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 453, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "4993:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4993:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 455, + "nodeType": "ExpressionStatement", + "src": "4993:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "4768:8:0", + "parameters": { + "id": 434, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 431, + "mutability": "mutable", + "name": "a", + "nameLocation": "4781:1:0", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "4777:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 430, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "4777:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 433, + "mutability": "mutable", + "name": "b", + "nameLocation": "4788:1:0", + "nodeType": "VariableDeclaration", + "scope": 459, + "src": "4784:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 432, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "4784:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "4776:14:0" + }, + "returnParameters": { + "id": 435, + "nodeType": "ParameterList", + "parameters": [], + "src": "4800:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 484, + "nodeType": "FunctionDefinition", + "src": "5021:176:0", + "body": { + "id": 483, + "nodeType": "Block", + "src": "5081:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 468, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 461, + "src": "5095:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 469, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 463, + "src": "5100:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "5095:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 482, + "nodeType": "IfStatement", + "src": "5091:100:0", + "trueBody": { + "id": 481, + "nodeType": "Block", + "src": "5103:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5139:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 473, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 465, + "src": "5148:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 471, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "5122:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5122:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 475, + "nodeType": "EmitStatement", + "src": "5117:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 477, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 461, + "src": "5175:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 478, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 463, + "src": "5178:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 476, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "5166:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5166:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 480, + "nodeType": "ExpressionStatement", + "src": "5166:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "5030:8:0", + "parameters": { + "id": 466, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 461, + "mutability": "mutable", + "name": "a", + "nameLocation": "5043:1:0", + "nodeType": "VariableDeclaration", + "scope": 484, + "src": "5039:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 460, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "5039:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 463, + "mutability": "mutable", + "name": "b", + "nameLocation": "5050:1:0", + "nodeType": "VariableDeclaration", + "scope": 484, + "src": "5046:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 462, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "5046:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 465, + "mutability": "mutable", + "name": "err", + "nameLocation": "5067:3:0", + "nodeType": "VariableDeclaration", + "scope": 484, + "src": "5053:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 464, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5053:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5038:33:0" + }, + "returnParameters": { + "id": 467, + "nodeType": "ParameterList", + "parameters": [], + "src": "5081:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 514, + "nodeType": "FunctionDefinition", + "src": "5202:262:0", + "body": { + "id": 513, + "nodeType": "Block", + "src": "5245:219:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 493, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 491, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 486, + "src": "5259:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 492, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 488, + "src": "5264:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5259:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 512, + "nodeType": "IfStatement", + "src": "5255:203:0", + "trueBody": { + "id": 511, + "nodeType": "Block", + "src": "5267:191:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745d", + "id": 495, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5290:36:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bb05d3ba160a011999668447ff4a7cdd52bf87aeb1d7b9b284ef23b37a2b183", + "typeString": "literal_string \"Error: a == b not satisfied [uint]\"" + }, + "value": "Error: a == b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3bb05d3ba160a011999668447ff4a7cdd52bf87aeb1d7b9b284ef23b37a2b183", + "typeString": "literal_string \"Error: a == b not satisfied [uint]\"" + } + ], + "id": 494, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "5286:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5286:41:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 497, + "nodeType": "EmitStatement", + "src": "5281:46:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 499, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5361:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 500, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 488, + "src": "5375:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 498, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "5346:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5346:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 502, + "nodeType": "EmitStatement", + "src": "5341:36:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 504, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5411:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 505, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 486, + "src": "5425:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 503, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "5396:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5396:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 507, + "nodeType": "EmitStatement", + "src": "5391:36:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 508, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "5441:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 509, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5441:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 510, + "nodeType": "ExpressionStatement", + "src": "5441:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "5211:8:0", + "parameters": { + "id": 489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 486, + "mutability": "mutable", + "name": "a", + "nameLocation": "5225:1:0", + "nodeType": "VariableDeclaration", + "scope": 514, + "src": "5220:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 485, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5220:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 488, + "mutability": "mutable", + "name": "b", + "nameLocation": "5233:1:0", + "nodeType": "VariableDeclaration", + "scope": 514, + "src": "5228:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 487, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5228:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5219:16:0" + }, + "returnParameters": { + "id": 490, + "nodeType": "ParameterList", + "parameters": [], + "src": "5245:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 539, + "nodeType": "FunctionDefinition", + "src": "5469:178:0", + "body": { + "id": 538, + "nodeType": "Block", + "src": "5531:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 525, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 523, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 516, + "src": "5545:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 524, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 518, + "src": "5550:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5545:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 537, + "nodeType": "IfStatement", + "src": "5541:100:0", + "trueBody": { + "id": 536, + "nodeType": "Block", + "src": "5553:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 527, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5589:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 528, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 520, + "src": "5598:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 526, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "5572:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5572:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 530, + "nodeType": "EmitStatement", + "src": "5567:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 532, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 516, + "src": "5625:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 533, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 518, + "src": "5628:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 531, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "5616:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5616:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 535, + "nodeType": "ExpressionStatement", + "src": "5616:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "5478:8:0", + "parameters": { + "id": 521, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 516, + "mutability": "mutable", + "name": "a", + "nameLocation": "5492:1:0", + "nodeType": "VariableDeclaration", + "scope": 539, + "src": "5487:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 515, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5487:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 518, + "mutability": "mutable", + "name": "b", + "nameLocation": "5500:1:0", + "nodeType": "VariableDeclaration", + "scope": 539, + "src": "5495:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 517, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5495:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 520, + "mutability": "mutable", + "name": "err", + "nameLocation": "5517:3:0", + "nodeType": "VariableDeclaration", + "scope": 539, + "src": "5503:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 519, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5503:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5486:35:0" + }, + "returnParameters": { + "id": 522, + "nodeType": "ParameterList", + "parameters": [], + "src": "5531:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 573, + "nodeType": "FunctionDefinition", + "src": "5652:323:0", + "body": { + "id": 572, + "nodeType": "Block", + "src": "5715:260:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 548, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 541, + "src": "5729:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 549, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 543, + "src": "5734:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "5729:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 571, + "nodeType": "IfStatement", + "src": "5725:244:0", + "trueBody": { + "id": 570, + "nodeType": "Block", + "src": "5737:232:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", + "id": 552, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5760:43:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3ee6ef9b326324a79dedc7af5585ef9f689364368b4e76dd3a37559719a19fe6", + "typeString": "literal_string \"Error: a == b not satisfied [decimal int]\"" + }, + "value": "Error: a == b not satisfied [decimal int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3ee6ef9b326324a79dedc7af5585ef9f689364368b4e76dd3a37559719a19fe6", + "typeString": "literal_string \"Error: a == b not satisfied [decimal int]\"" + } + ], + "id": 551, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "5756:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 553, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5756:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 554, + "nodeType": "EmitStatement", + "src": "5751:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5845:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 557, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 543, + "src": "5859:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 558, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 545, + "src": "5862:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 555, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "5823:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5823:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 560, + "nodeType": "EmitStatement", + "src": "5818:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 562, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5912:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 563, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 541, + "src": "5926:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 564, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 545, + "src": "5929:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 561, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "5890:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5890:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 566, + "nodeType": "EmitStatement", + "src": "5885:53:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 567, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "5952:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5952:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 569, + "nodeType": "ExpressionStatement", + "src": "5952:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEqDecimal", + "nameLocation": "5661:15:0", + "parameters": { + "id": 546, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 541, + "mutability": "mutable", + "name": "a", + "nameLocation": "5681:1:0", + "nodeType": "VariableDeclaration", + "scope": 573, + "src": "5677:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 540, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "5677:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 543, + "mutability": "mutable", + "name": "b", + "nameLocation": "5688:1:0", + "nodeType": "VariableDeclaration", + "scope": 573, + "src": "5684:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 542, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "5684:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 545, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "5696:8:0", + "nodeType": "VariableDeclaration", + "scope": 573, + "src": "5691:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 544, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5691:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "5676:29:0" + }, + "returnParameters": { + "id": 547, + "nodeType": "ParameterList", + "parameters": [], + "src": "5715:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 601, + "nodeType": "FunctionDefinition", + "src": "5980:215:0", + "body": { + "id": 600, + "nodeType": "Block", + "src": "6062:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 584, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 575, + "src": "6076:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 585, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 577, + "src": "6081:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "6076:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 599, + "nodeType": "IfStatement", + "src": "6072:117:0", + "trueBody": { + "id": 598, + "nodeType": "Block", + "src": "6084:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 588, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6120:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 589, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 581, + "src": "6129:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 587, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6103:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6103:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 591, + "nodeType": "EmitStatement", + "src": "6098:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 593, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 575, + "src": "6163:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 594, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 577, + "src": "6166:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 595, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 579, + "src": "6169:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 592, + "name": "assertEqDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 573, + 601, + 635, + 663 + ], + "referencedDeclaration": 573, + "src": "6147:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 596, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6147:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 597, + "nodeType": "ExpressionStatement", + "src": "6147:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEqDecimal", + "nameLocation": "5989:15:0", + "parameters": { + "id": 582, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 575, + "mutability": "mutable", + "name": "a", + "nameLocation": "6009:1:0", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "6005:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 574, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "6005:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 577, + "mutability": "mutable", + "name": "b", + "nameLocation": "6016:1:0", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "6012:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 576, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "6012:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 579, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "6024:8:0", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "6019:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 578, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6019:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 581, + "mutability": "mutable", + "name": "err", + "nameLocation": "6048:3:0", + "nodeType": "VariableDeclaration", + "scope": 601, + "src": "6034:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 580, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6034:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6004:48:0" + }, + "returnParameters": { + "id": 583, + "nodeType": "ParameterList", + "parameters": [], + "src": "6062:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 635, + "nodeType": "FunctionDefinition", + "src": "6200:328:0", + "body": { + "id": 634, + "nodeType": "Block", + "src": "6265:263:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 610, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 603, + "src": "6279:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 611, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 605, + "src": "6284:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6279:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 633, + "nodeType": "IfStatement", + "src": "6275:247:0", + "trueBody": { + "id": 632, + "nodeType": "Block", + "src": "6287:235:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", + "id": 614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6310:44:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_acd59a69b2dc4bcee2d5b2a205a178a5eace192e68808cc4db1cea91cdc48141", + "typeString": "literal_string \"Error: a == b not satisfied [decimal uint]\"" + }, + "value": "Error: a == b not satisfied [decimal uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_acd59a69b2dc4bcee2d5b2a205a178a5eace192e68808cc4db1cea91cdc48141", + "typeString": "literal_string \"Error: a == b not satisfied [decimal uint]\"" + } + ], + "id": 613, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6306:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6306:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 616, + "nodeType": "EmitStatement", + "src": "6301:54:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6397:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 619, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 605, + "src": "6411:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 620, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 607, + "src": "6414:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 617, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "6374:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6374:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 622, + "nodeType": "EmitStatement", + "src": "6369:54:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6465:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 625, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 603, + "src": "6479:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 626, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 607, + "src": "6482:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 623, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "6442:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 627, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6442:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 628, + "nodeType": "EmitStatement", + "src": "6437:54:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 629, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "6505:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6505:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 631, + "nodeType": "ExpressionStatement", + "src": "6505:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEqDecimal", + "nameLocation": "6209:15:0", + "parameters": { + "id": 608, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 603, + "mutability": "mutable", + "name": "a", + "nameLocation": "6230:1:0", + "nodeType": "VariableDeclaration", + "scope": 635, + "src": "6225:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 602, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6225:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 605, + "mutability": "mutable", + "name": "b", + "nameLocation": "6238:1:0", + "nodeType": "VariableDeclaration", + "scope": 635, + "src": "6233:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 604, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6233:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 607, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "6246:8:0", + "nodeType": "VariableDeclaration", + "scope": 635, + "src": "6241:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 606, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6241:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6224:31:0" + }, + "returnParameters": { + "id": 609, + "nodeType": "ParameterList", + "parameters": [], + "src": "6265:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 663, + "nodeType": "FunctionDefinition", + "src": "6533:217:0", + "body": { + "id": 662, + "nodeType": "Block", + "src": "6617:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 648, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 646, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 637, + "src": "6631:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 647, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 639, + "src": "6636:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6631:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 661, + "nodeType": "IfStatement", + "src": "6627:117:0", + "trueBody": { + "id": 660, + "nodeType": "Block", + "src": "6639:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6675:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 651, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 643, + "src": "6684:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 649, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6658:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6658:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 653, + "nodeType": "EmitStatement", + "src": "6653:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 655, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 637, + "src": "6718:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 656, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 639, + "src": "6721:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 657, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 641, + "src": "6724:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 654, + "name": "assertEqDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 573, + 601, + 635, + 663 + ], + "referencedDeclaration": 635, + "src": "6702:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6702:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 659, + "nodeType": "ExpressionStatement", + "src": "6702:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEqDecimal", + "nameLocation": "6542:15:0", + "parameters": { + "id": 644, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 637, + "mutability": "mutable", + "name": "a", + "nameLocation": "6563:1:0", + "nodeType": "VariableDeclaration", + "scope": 663, + "src": "6558:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 636, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6558:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 639, + "mutability": "mutable", + "name": "b", + "nameLocation": "6571:1:0", + "nodeType": "VariableDeclaration", + "scope": 663, + "src": "6566:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 638, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6566:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 641, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "6579:8:0", + "nodeType": "VariableDeclaration", + "scope": 663, + "src": "6574:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 640, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6574:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 643, + "mutability": "mutable", + "name": "err", + "nameLocation": "6603:3:0", + "nodeType": "VariableDeclaration", + "scope": 663, + "src": "6589:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 642, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6589:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6557:50:0" + }, + "returnParameters": { + "id": 645, + "nodeType": "ParameterList", + "parameters": [], + "src": "6617:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 693, + "nodeType": "FunctionDefinition", + "src": "6756:259:0", + "body": { + "id": 692, + "nodeType": "Block", + "src": "6799:216:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 672, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 670, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 665, + "src": "6813:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 671, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 667, + "src": "6818:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6813:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 691, + "nodeType": "IfStatement", + "src": "6809:200:0", + "trueBody": { + "id": 690, + "nodeType": "Block", + "src": "6821:188:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b75696e745d", + "id": 674, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6844:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_71977b46fbd6a64b4465b93c7a77bcaa06103df599ead9f7e7004b34129c9e3a", + "typeString": "literal_string \"Error: a > b not satisfied [uint]\"" + }, + "value": "Error: a > b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_71977b46fbd6a64b4465b93c7a77bcaa06103df599ead9f7e7004b34129c9e3a", + "typeString": "literal_string \"Error: a > b not satisfied [uint]\"" + } + ], + "id": 673, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6840:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6840:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 676, + "nodeType": "EmitStatement", + "src": "6835:45:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 678, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6914:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 679, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 665, + "src": "6927:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 677, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "6899:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 680, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6899:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 681, + "nodeType": "EmitStatement", + "src": "6894:35:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 683, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6963:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 684, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 667, + "src": "6976:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 682, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "6948:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6948:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 686, + "nodeType": "EmitStatement", + "src": "6943:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 687, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "6992:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6992:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 689, + "nodeType": "ExpressionStatement", + "src": "6992:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGt", + "nameLocation": "6765:8:0", + "parameters": { + "id": 668, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 665, + "mutability": "mutable", + "name": "a", + "nameLocation": "6779:1:0", + "nodeType": "VariableDeclaration", + "scope": 693, + "src": "6774:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 664, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6774:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 667, + "mutability": "mutable", + "name": "b", + "nameLocation": "6787:1:0", + "nodeType": "VariableDeclaration", + "scope": 693, + "src": "6782:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 666, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6782:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6773:16:0" + }, + "returnParameters": { + "id": 669, + "nodeType": "ParameterList", + "parameters": [], + "src": "6799:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 718, + "nodeType": "FunctionDefinition", + "src": "7020:178:0", + "body": { + "id": 717, + "nodeType": "Block", + "src": "7082:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 702, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 695, + "src": "7096:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 703, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 697, + "src": "7101:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 716, + "nodeType": "IfStatement", + "src": "7092:100:0", + "trueBody": { + "id": 715, + "nodeType": "Block", + "src": "7104:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 706, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7140:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 707, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 699, + "src": "7149:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 705, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "7123:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 708, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7123:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 709, + "nodeType": "EmitStatement", + "src": "7118:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 711, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 695, + "src": "7176:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 712, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 697, + "src": "7179:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 710, + "name": "assertGt", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 693, + 718, + 748, + 773 + ], + "referencedDeclaration": 693, + "src": "7167:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 713, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7167:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 714, + "nodeType": "ExpressionStatement", + "src": "7167:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGt", + "nameLocation": "7029:8:0", + "parameters": { + "id": 700, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 695, + "mutability": "mutable", + "name": "a", + "nameLocation": "7043:1:0", + "nodeType": "VariableDeclaration", + "scope": 718, + "src": "7038:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 694, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7038:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 697, + "mutability": "mutable", + "name": "b", + "nameLocation": "7051:1:0", + "nodeType": "VariableDeclaration", + "scope": 718, + "src": "7046:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 696, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7046:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 699, + "mutability": "mutable", + "name": "err", + "nameLocation": "7068:3:0", + "nodeType": "VariableDeclaration", + "scope": 718, + "src": "7054:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 698, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7054:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7037:35:0" + }, + "returnParameters": { + "id": 701, + "nodeType": "ParameterList", + "parameters": [], + "src": "7082:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 748, + "nodeType": "FunctionDefinition", + "src": "7203:254:0", + "body": { + "id": 747, + "nodeType": "Block", + "src": "7244:213:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 725, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 720, + "src": "7258:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 726, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 722, + "src": "7263:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "7258:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 746, + "nodeType": "IfStatement", + "src": "7254:197:0", + "trueBody": { + "id": 745, + "nodeType": "Block", + "src": "7266:185:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b696e745d", + "id": 729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7289:34:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c6338b3f9677628b4efbdc683490461f2a94469341c3d2ff3d117001fb77d49b", + "typeString": "literal_string \"Error: a > b not satisfied [int]\"" + }, + "value": "Error: a > b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c6338b3f9677628b4efbdc683490461f2a94469341c3d2ff3d117001fb77d49b", + "typeString": "literal_string \"Error: a > b not satisfied [int]\"" + } + ], + "id": 728, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7285:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7285:39:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 731, + "nodeType": "EmitStatement", + "src": "7280:44:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 733, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7357:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 734, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 720, + "src": "7370:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 732, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "7343:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 735, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7343:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 736, + "nodeType": "EmitStatement", + "src": "7338:34:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7405:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 739, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 722, + "src": "7418:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 737, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "7391:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7391:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 741, + "nodeType": "EmitStatement", + "src": "7386:34:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 742, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "7434:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 743, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7434:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 744, + "nodeType": "ExpressionStatement", + "src": "7434:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGt", + "nameLocation": "7212:8:0", + "parameters": { + "id": 723, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 720, + "mutability": "mutable", + "name": "a", + "nameLocation": "7225:1:0", + "nodeType": "VariableDeclaration", + "scope": 748, + "src": "7221:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 719, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7221:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 722, + "mutability": "mutable", + "name": "b", + "nameLocation": "7232:1:0", + "nodeType": "VariableDeclaration", + "scope": 748, + "src": "7228:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 721, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7228:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "7220:14:0" + }, + "returnParameters": { + "id": 724, + "nodeType": "ParameterList", + "parameters": [], + "src": "7244:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 773, + "nodeType": "FunctionDefinition", + "src": "7462:176:0", + "body": { + "id": 772, + "nodeType": "Block", + "src": "7522:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 759, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 757, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 750, + "src": "7536:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 758, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 752, + "src": "7541:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "7536:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 771, + "nodeType": "IfStatement", + "src": "7532:100:0", + "trueBody": { + "id": 770, + "nodeType": "Block", + "src": "7544:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 761, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7580:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 762, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 754, + "src": "7589:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 760, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "7563:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 763, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7563:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 764, + "nodeType": "EmitStatement", + "src": "7558:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 766, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 750, + "src": "7616:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 767, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 752, + "src": "7619:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 765, + "name": "assertGt", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 693, + 718, + 748, + 773 + ], + "referencedDeclaration": 748, + "src": "7607:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 768, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7607:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 769, + "nodeType": "ExpressionStatement", + "src": "7607:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGt", + "nameLocation": "7471:8:0", + "parameters": { + "id": 755, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 750, + "mutability": "mutable", + "name": "a", + "nameLocation": "7484:1:0", + "nodeType": "VariableDeclaration", + "scope": 773, + "src": "7480:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 749, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7480:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 752, + "mutability": "mutable", + "name": "b", + "nameLocation": "7491:1:0", + "nodeType": "VariableDeclaration", + "scope": 773, + "src": "7487:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 751, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7487:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 754, + "mutability": "mutable", + "name": "err", + "nameLocation": "7508:3:0", + "nodeType": "VariableDeclaration", + "scope": 773, + "src": "7494:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 753, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7494:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7479:33:0" + }, + "returnParameters": { + "id": 756, + "nodeType": "ParameterList", + "parameters": [], + "src": "7522:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 807, + "nodeType": "FunctionDefinition", + "src": "7643:320:0", + "body": { + "id": 806, + "nodeType": "Block", + "src": "7706:257:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 782, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 775, + "src": "7720:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 783, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 777, + "src": "7725:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "7720:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 805, + "nodeType": "IfStatement", + "src": "7716:241:0", + "trueBody": { + "id": 804, + "nodeType": "Block", + "src": "7728:229:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c20696e745d", + "id": 786, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7751:42:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_85ee98c18b4560d5bfeeef41e54955cef93f7b8071348c487f1fd81bd1aaf2ad", + "typeString": "literal_string \"Error: a > b not satisfied [decimal int]\"" + }, + "value": "Error: a > b not satisfied [decimal int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_85ee98c18b4560d5bfeeef41e54955cef93f7b8071348c487f1fd81bd1aaf2ad", + "typeString": "literal_string \"Error: a > b not satisfied [decimal int]\"" + } + ], + "id": 785, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7747:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 787, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7747:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 788, + "nodeType": "EmitStatement", + "src": "7742:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 790, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7835:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 791, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 775, + "src": "7848:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 792, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 779, + "src": "7851:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 789, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "7813:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7813:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 794, + "nodeType": "EmitStatement", + "src": "7808:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 796, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7901:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 797, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 777, + "src": "7914:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 798, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 779, + "src": "7917:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 795, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "7879:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 799, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7879:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 800, + "nodeType": "EmitStatement", + "src": "7874:52:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 801, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "7940:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7940:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 803, + "nodeType": "ExpressionStatement", + "src": "7940:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGtDecimal", + "nameLocation": "7652:15:0", + "parameters": { + "id": 780, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 775, + "mutability": "mutable", + "name": "a", + "nameLocation": "7672:1:0", + "nodeType": "VariableDeclaration", + "scope": 807, + "src": "7668:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 774, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7668:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 777, + "mutability": "mutable", + "name": "b", + "nameLocation": "7679:1:0", + "nodeType": "VariableDeclaration", + "scope": 807, + "src": "7675:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 776, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7675:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 779, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "7687:8:0", + "nodeType": "VariableDeclaration", + "scope": 807, + "src": "7682:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 778, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "7682:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7667:29:0" + }, + "returnParameters": { + "id": 781, + "nodeType": "ParameterList", + "parameters": [], + "src": "7706:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 835, + "nodeType": "FunctionDefinition", + "src": "7968:215:0", + "body": { + "id": 834, + "nodeType": "Block", + "src": "8050:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 818, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 809, + "src": "8064:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 819, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 811, + "src": "8069:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "8064:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 833, + "nodeType": "IfStatement", + "src": "8060:117:0", + "trueBody": { + "id": 832, + "nodeType": "Block", + "src": "8072:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 822, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8108:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 823, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 815, + "src": "8117:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 821, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8091:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8091:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 825, + "nodeType": "EmitStatement", + "src": "8086:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 827, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 809, + "src": "8151:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 828, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 811, + "src": "8154:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 829, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 813, + "src": "8157:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 826, + "name": "assertGtDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 807, + 835, + 869, + 897 + ], + "referencedDeclaration": 807, + "src": "8135:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 830, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8135:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 831, + "nodeType": "ExpressionStatement", + "src": "8135:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGtDecimal", + "nameLocation": "7977:15:0", + "parameters": { + "id": 816, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 809, + "mutability": "mutable", + "name": "a", + "nameLocation": "7997:1:0", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "7993:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 808, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "7993:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 811, + "mutability": "mutable", + "name": "b", + "nameLocation": "8004:1:0", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "8000:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 810, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "8000:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 813, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "8012:8:0", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "8007:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 812, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8007:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 815, + "mutability": "mutable", + "name": "err", + "nameLocation": "8036:3:0", + "nodeType": "VariableDeclaration", + "scope": 835, + "src": "8022:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 814, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8022:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7992:48:0" + }, + "returnParameters": { + "id": 817, + "nodeType": "ParameterList", + "parameters": [], + "src": "8050:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 869, + "nodeType": "FunctionDefinition", + "src": "8188:325:0", + "body": { + "id": 868, + "nodeType": "Block", + "src": "8253:260:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 846, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 844, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 837, + "src": "8267:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 845, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 839, + "src": "8272:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8267:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 867, + "nodeType": "IfStatement", + "src": "8263:244:0", + "trueBody": { + "id": 866, + "nodeType": "Block", + "src": "8275:232:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e2062206e6f7420736174697366696564205b646563696d616c2075696e745d", + "id": 848, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8298:43:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2a2cca6a3a53808b9763cfdafa62d083cc161a243845052a9c6e09d6d624c69f", + "typeString": "literal_string \"Error: a > b not satisfied [decimal uint]\"" + }, + "value": "Error: a > b not satisfied [decimal uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2a2cca6a3a53808b9763cfdafa62d083cc161a243845052a9c6e09d6d624c69f", + "typeString": "literal_string \"Error: a > b not satisfied [decimal uint]\"" + } + ], + "id": 847, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8294:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8294:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 850, + "nodeType": "EmitStatement", + "src": "8289:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 852, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8384:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 853, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 837, + "src": "8397:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 854, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 841, + "src": "8400:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 851, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "8361:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8361:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 856, + "nodeType": "EmitStatement", + "src": "8356:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 858, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8451:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 859, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 839, + "src": "8464:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 860, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 841, + "src": "8467:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 857, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "8428:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 861, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8428:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 862, + "nodeType": "EmitStatement", + "src": "8423:53:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 863, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "8490:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 864, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8490:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 865, + "nodeType": "ExpressionStatement", + "src": "8490:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGtDecimal", + "nameLocation": "8197:15:0", + "parameters": { + "id": 842, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 837, + "mutability": "mutable", + "name": "a", + "nameLocation": "8218:1:0", + "nodeType": "VariableDeclaration", + "scope": 869, + "src": "8213:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 836, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8213:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 839, + "mutability": "mutable", + "name": "b", + "nameLocation": "8226:1:0", + "nodeType": "VariableDeclaration", + "scope": 869, + "src": "8221:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 838, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8221:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 841, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "8234:8:0", + "nodeType": "VariableDeclaration", + "scope": 869, + "src": "8229:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 840, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8229:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8212:31:0" + }, + "returnParameters": { + "id": 843, + "nodeType": "ParameterList", + "parameters": [], + "src": "8253:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 897, + "nodeType": "FunctionDefinition", + "src": "8518:217:0", + "body": { + "id": 896, + "nodeType": "Block", + "src": "8602:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 880, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 871, + "src": "8616:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 881, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 873, + "src": "8621:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8616:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 895, + "nodeType": "IfStatement", + "src": "8612:117:0", + "trueBody": { + "id": 894, + "nodeType": "Block", + "src": "8624:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 884, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8660:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 885, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 877, + "src": "8669:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 883, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8643:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 886, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8643:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 887, + "nodeType": "EmitStatement", + "src": "8638:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 889, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 871, + "src": "8703:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 890, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 873, + "src": "8706:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 891, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 875, + "src": "8709:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 888, + "name": "assertGtDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 807, + 835, + 869, + 897 + ], + "referencedDeclaration": 869, + "src": "8687:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8687:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 893, + "nodeType": "ExpressionStatement", + "src": "8687:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGtDecimal", + "nameLocation": "8527:15:0", + "parameters": { + "id": 878, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 871, + "mutability": "mutable", + "name": "a", + "nameLocation": "8548:1:0", + "nodeType": "VariableDeclaration", + "scope": 897, + "src": "8543:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 870, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8543:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 873, + "mutability": "mutable", + "name": "b", + "nameLocation": "8556:1:0", + "nodeType": "VariableDeclaration", + "scope": 897, + "src": "8551:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 872, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8551:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 875, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "8564:8:0", + "nodeType": "VariableDeclaration", + "scope": 897, + "src": "8559:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 874, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8559:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 877, + "mutability": "mutable", + "name": "err", + "nameLocation": "8588:3:0", + "nodeType": "VariableDeclaration", + "scope": 897, + "src": "8574:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 876, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8574:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8542:50:0" + }, + "returnParameters": { + "id": 879, + "nodeType": "ParameterList", + "parameters": [], + "src": "8602:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 927, + "nodeType": "FunctionDefinition", + "src": "8741:259:0", + "body": { + "id": 926, + "nodeType": "Block", + "src": "8784:216:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 906, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 904, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 899, + "src": "8798:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 905, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 901, + "src": "8802:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8798:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 925, + "nodeType": "IfStatement", + "src": "8794:200:0", + "trueBody": { + "id": 924, + "nodeType": "Block", + "src": "8805:189:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8828:36:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ad79593ab7a8c163bd9b5379945ad36a940281a5ef1023478b9c309b02ea375e", + "typeString": "literal_string \"Error: a >= b not satisfied [uint]\"" + }, + "value": "Error: a >= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_ad79593ab7a8c163bd9b5379945ad36a940281a5ef1023478b9c309b02ea375e", + "typeString": "literal_string \"Error: a >= b not satisfied [uint]\"" + } + ], + "id": 907, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8824:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8824:41:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 910, + "nodeType": "EmitStatement", + "src": "8819:46:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8899:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 913, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 899, + "src": "8912:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 911, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "8884:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8884:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 915, + "nodeType": "EmitStatement", + "src": "8879:35:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 917, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8948:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 918, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 901, + "src": "8961:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 916, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "8933:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8933:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 920, + "nodeType": "EmitStatement", + "src": "8928:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 921, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "8977:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 922, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8977:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 923, + "nodeType": "ExpressionStatement", + "src": "8977:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGe", + "nameLocation": "8750:8:0", + "parameters": { + "id": 902, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 899, + "mutability": "mutable", + "name": "a", + "nameLocation": "8764:1:0", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "8759:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 898, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8759:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 901, + "mutability": "mutable", + "name": "b", + "nameLocation": "8772:1:0", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "8767:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 900, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8767:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8758:16:0" + }, + "returnParameters": { + "id": 903, + "nodeType": "ParameterList", + "parameters": [], + "src": "8784:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 952, + "nodeType": "FunctionDefinition", + "src": "9005:177:0", + "body": { + "id": 951, + "nodeType": "Block", + "src": "9067:115:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 936, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 929, + "src": "9081:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 937, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 931, + "src": "9085:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9081:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 950, + "nodeType": "IfStatement", + "src": "9077:99:0", + "trueBody": { + "id": 949, + "nodeType": "Block", + "src": "9088:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 940, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9124:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 941, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 933, + "src": "9133:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 939, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9107:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 942, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9107:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 943, + "nodeType": "EmitStatement", + "src": "9102:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 945, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 929, + "src": "9160:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 946, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 931, + "src": "9163:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 944, + "name": "assertGe", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 927, + 952, + 982, + 1007 + ], + "referencedDeclaration": 927, + "src": "9151:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 947, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9151:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 948, + "nodeType": "ExpressionStatement", + "src": "9151:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGe", + "nameLocation": "9014:8:0", + "parameters": { + "id": 934, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 929, + "mutability": "mutable", + "name": "a", + "nameLocation": "9028:1:0", + "nodeType": "VariableDeclaration", + "scope": 952, + "src": "9023:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 928, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9023:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 931, + "mutability": "mutable", + "name": "b", + "nameLocation": "9036:1:0", + "nodeType": "VariableDeclaration", + "scope": 952, + "src": "9031:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 930, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9031:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 933, + "mutability": "mutable", + "name": "err", + "nameLocation": "9053:3:0", + "nodeType": "VariableDeclaration", + "scope": 952, + "src": "9039:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 932, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9039:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9022:35:0" + }, + "returnParameters": { + "id": 935, + "nodeType": "ParameterList", + "parameters": [], + "src": "9067:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 982, + "nodeType": "FunctionDefinition", + "src": "9187:254:0", + "body": { + "id": 981, + "nodeType": "Block", + "src": "9228:213:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 961, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 959, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 954, + "src": "9242:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 960, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 956, + "src": "9246:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "9242:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 980, + "nodeType": "IfStatement", + "src": "9238:197:0", + "trueBody": { + "id": 979, + "nodeType": "Block", + "src": "9249:186:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b696e745d", + "id": 963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9272:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9dd34d7cd7d190bc9855e4326f563fd4539c0d764699b480d53bfd72aa5807a6", + "typeString": "literal_string \"Error: a >= b not satisfied [int]\"" + }, + "value": "Error: a >= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9dd34d7cd7d190bc9855e4326f563fd4539c0d764699b480d53bfd72aa5807a6", + "typeString": "literal_string \"Error: a >= b not satisfied [int]\"" + } + ], + "id": 962, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9268:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 964, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9268:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 965, + "nodeType": "EmitStatement", + "src": "9263:45:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 967, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9341:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 968, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 954, + "src": "9354:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 966, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "9327:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 969, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9327:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 970, + "nodeType": "EmitStatement", + "src": "9322:34:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 972, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9389:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 973, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 956, + "src": "9402:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 971, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "9375:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 974, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9375:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 975, + "nodeType": "EmitStatement", + "src": "9370:34:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 976, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "9418:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9418:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 978, + "nodeType": "ExpressionStatement", + "src": "9418:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGe", + "nameLocation": "9196:8:0", + "parameters": { + "id": 957, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 954, + "mutability": "mutable", + "name": "a", + "nameLocation": "9209:1:0", + "nodeType": "VariableDeclaration", + "scope": 982, + "src": "9205:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 953, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9205:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 956, + "mutability": "mutable", + "name": "b", + "nameLocation": "9216:1:0", + "nodeType": "VariableDeclaration", + "scope": 982, + "src": "9212:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 955, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9212:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "9204:14:0" + }, + "returnParameters": { + "id": 958, + "nodeType": "ParameterList", + "parameters": [], + "src": "9228:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1007, + "nodeType": "FunctionDefinition", + "src": "9446:175:0", + "body": { + "id": 1006, + "nodeType": "Block", + "src": "9506:115:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 991, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 984, + "src": "9520:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 992, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 986, + "src": "9524:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "9520:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1005, + "nodeType": "IfStatement", + "src": "9516:99:0", + "trueBody": { + "id": 1004, + "nodeType": "Block", + "src": "9527:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 995, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9563:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 996, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 988, + "src": "9572:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 994, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9546:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9546:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 998, + "nodeType": "EmitStatement", + "src": "9541:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1000, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 984, + "src": "9599:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1001, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 986, + "src": "9602:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 999, + "name": "assertGe", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 927, + 952, + 982, + 1007 + ], + "referencedDeclaration": 982, + "src": "9590:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 1002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9590:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1003, + "nodeType": "ExpressionStatement", + "src": "9590:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGe", + "nameLocation": "9455:8:0", + "parameters": { + "id": 989, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 984, + "mutability": "mutable", + "name": "a", + "nameLocation": "9468:1:0", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "9464:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 983, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9464:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 986, + "mutability": "mutable", + "name": "b", + "nameLocation": "9475:1:0", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "9471:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 985, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9471:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 988, + "mutability": "mutable", + "name": "err", + "nameLocation": "9492:3:0", + "nodeType": "VariableDeclaration", + "scope": 1007, + "src": "9478:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 987, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9478:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9463:33:0" + }, + "returnParameters": { + "id": 990, + "nodeType": "ParameterList", + "parameters": [], + "src": "9506:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1041, + "nodeType": "FunctionDefinition", + "src": "9626:320:0", + "body": { + "id": 1040, + "nodeType": "Block", + "src": "9689:257:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1018, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1016, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1009, + "src": "9703:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1017, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1011, + "src": "9707:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "9703:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1039, + "nodeType": "IfStatement", + "src": "9699:241:0", + "trueBody": { + "id": 1038, + "nodeType": "Block", + "src": "9710:230:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9733:43:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0f02f65375ca93c3f3c485b8b2455303d1a8668a2b626cba00789d1c4ebd8736", + "typeString": "literal_string \"Error: a >= b not satisfied [decimal int]\"" + }, + "value": "Error: a >= b not satisfied [decimal int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0f02f65375ca93c3f3c485b8b2455303d1a8668a2b626cba00789d1c4ebd8736", + "typeString": "literal_string \"Error: a >= b not satisfied [decimal int]\"" + } + ], + "id": 1019, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9729:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9729:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1022, + "nodeType": "EmitStatement", + "src": "9724:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1024, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9818:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1025, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1009, + "src": "9831:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1026, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1013, + "src": "9834:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1023, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "9796:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1027, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9796:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1028, + "nodeType": "EmitStatement", + "src": "9791:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1030, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9884:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1031, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1011, + "src": "9897:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1032, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1013, + "src": "9900:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1029, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "9862:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9862:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1034, + "nodeType": "EmitStatement", + "src": "9857:52:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1035, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "9923:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1036, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9923:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1037, + "nodeType": "ExpressionStatement", + "src": "9923:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGeDecimal", + "nameLocation": "9635:15:0", + "parameters": { + "id": 1014, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1009, + "mutability": "mutable", + "name": "a", + "nameLocation": "9655:1:0", + "nodeType": "VariableDeclaration", + "scope": 1041, + "src": "9651:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1008, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9651:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1011, + "mutability": "mutable", + "name": "b", + "nameLocation": "9662:1:0", + "nodeType": "VariableDeclaration", + "scope": 1041, + "src": "9658:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1010, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9658:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1013, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "9670:8:0", + "nodeType": "VariableDeclaration", + "scope": 1041, + "src": "9665:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1012, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9665:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9650:29:0" + }, + "returnParameters": { + "id": 1015, + "nodeType": "ParameterList", + "parameters": [], + "src": "9689:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1069, + "nodeType": "FunctionDefinition", + "src": "9951:214:0", + "body": { + "id": 1068, + "nodeType": "Block", + "src": "10033:132:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1052, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1043, + "src": "10047:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1053, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1045, + "src": "10051:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "10047:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1067, + "nodeType": "IfStatement", + "src": "10043:116:0", + "trueBody": { + "id": 1066, + "nodeType": "Block", + "src": "10054:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1056, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10090:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1057, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1049, + "src": "10099:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1055, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10073:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10073:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1059, + "nodeType": "EmitStatement", + "src": "10068:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1061, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1043, + "src": "10133:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1062, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1045, + "src": "10136:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1063, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1047, + "src": "10139:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1060, + "name": "assertGeDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1041, + 1069, + 1103, + 1131 + ], + "referencedDeclaration": 1041, + "src": "10117:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 1064, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10117:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1065, + "nodeType": "ExpressionStatement", + "src": "10117:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGeDecimal", + "nameLocation": "9960:15:0", + "parameters": { + "id": 1050, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1043, + "mutability": "mutable", + "name": "a", + "nameLocation": "9980:1:0", + "nodeType": "VariableDeclaration", + "scope": 1069, + "src": "9976:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1042, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9976:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1045, + "mutability": "mutable", + "name": "b", + "nameLocation": "9987:1:0", + "nodeType": "VariableDeclaration", + "scope": 1069, + "src": "9983:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1044, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "9983:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1047, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "9995:8:0", + "nodeType": "VariableDeclaration", + "scope": 1069, + "src": "9990:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1046, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "9990:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1049, + "mutability": "mutable", + "name": "err", + "nameLocation": "10019:3:0", + "nodeType": "VariableDeclaration", + "scope": 1069, + "src": "10005:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1048, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10005:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9975:48:0" + }, + "returnParameters": { + "id": 1051, + "nodeType": "ParameterList", + "parameters": [], + "src": "10033:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1103, + "nodeType": "FunctionDefinition", + "src": "10170:325:0", + "body": { + "id": 1102, + "nodeType": "Block", + "src": "10235:260:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1080, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1078, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1071, + "src": "10249:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1079, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1073, + "src": "10253:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10249:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1101, + "nodeType": "IfStatement", + "src": "10245:244:0", + "trueBody": { + "id": 1100, + "nodeType": "Block", + "src": "10256:233:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203e3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", + "id": 1082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10279:44:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_1192304a51ee70969886576ac83224cad7adddc5aab218616c612e9fa634c616", + "typeString": "literal_string \"Error: a >= b not satisfied [decimal uint]\"" + }, + "value": "Error: a >= b not satisfied [decimal uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_1192304a51ee70969886576ac83224cad7adddc5aab218616c612e9fa634c616", + "typeString": "literal_string \"Error: a >= b not satisfied [decimal uint]\"" + } + ], + "id": 1081, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10275:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10275:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1084, + "nodeType": "EmitStatement", + "src": "10270:54:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1086, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10366:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1087, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1071, + "src": "10379:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1088, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1075, + "src": "10382:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1085, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "10343:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10343:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1090, + "nodeType": "EmitStatement", + "src": "10338:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1092, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10433:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1093, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1073, + "src": "10446:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1094, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1075, + "src": "10449:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1091, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "10410:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1095, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10410:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1096, + "nodeType": "EmitStatement", + "src": "10405:53:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1097, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "10472:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1098, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10472:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1099, + "nodeType": "ExpressionStatement", + "src": "10472:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGeDecimal", + "nameLocation": "10179:15:0", + "parameters": { + "id": 1076, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1071, + "mutability": "mutable", + "name": "a", + "nameLocation": "10200:1:0", + "nodeType": "VariableDeclaration", + "scope": 1103, + "src": "10195:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1070, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10195:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1073, + "mutability": "mutable", + "name": "b", + "nameLocation": "10208:1:0", + "nodeType": "VariableDeclaration", + "scope": 1103, + "src": "10203:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1072, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10203:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1075, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "10216:8:0", + "nodeType": "VariableDeclaration", + "scope": 1103, + "src": "10211:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1074, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10211:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10194:31:0" + }, + "returnParameters": { + "id": 1077, + "nodeType": "ParameterList", + "parameters": [], + "src": "10235:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1131, + "nodeType": "FunctionDefinition", + "src": "10500:216:0", + "body": { + "id": 1130, + "nodeType": "Block", + "src": "10584:132:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1114, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1105, + "src": "10598:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1115, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1107, + "src": "10602:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10598:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1129, + "nodeType": "IfStatement", + "src": "10594:116:0", + "trueBody": { + "id": 1128, + "nodeType": "Block", + "src": "10605:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10641:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1119, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1111, + "src": "10650:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1117, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10624:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10624:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1121, + "nodeType": "EmitStatement", + "src": "10619:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1123, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1105, + "src": "10684:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1124, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1107, + "src": "10687:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1125, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1109, + "src": "10690:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1122, + "name": "assertGeDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1041, + 1069, + 1103, + 1131 + ], + "referencedDeclaration": 1103, + "src": "10668:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 1126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10668:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1127, + "nodeType": "ExpressionStatement", + "src": "10668:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertGeDecimal", + "nameLocation": "10509:15:0", + "parameters": { + "id": 1112, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1105, + "mutability": "mutable", + "name": "a", + "nameLocation": "10530:1:0", + "nodeType": "VariableDeclaration", + "scope": 1131, + "src": "10525:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1104, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10525:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1107, + "mutability": "mutable", + "name": "b", + "nameLocation": "10538:1:0", + "nodeType": "VariableDeclaration", + "scope": 1131, + "src": "10533:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1106, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10533:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1109, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "10546:8:0", + "nodeType": "VariableDeclaration", + "scope": 1131, + "src": "10541:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1108, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10541:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1111, + "mutability": "mutable", + "name": "err", + "nameLocation": "10570:3:0", + "nodeType": "VariableDeclaration", + "scope": 1131, + "src": "10556:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1110, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10556:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10524:50:0" + }, + "returnParameters": { + "id": 1113, + "nodeType": "ParameterList", + "parameters": [], + "src": "10584:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1161, + "nodeType": "FunctionDefinition", + "src": "10722:259:0", + "body": { + "id": 1160, + "nodeType": "Block", + "src": "10765:216:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1138, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1133, + "src": "10779:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1139, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1135, + "src": "10784:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10779:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1159, + "nodeType": "IfStatement", + "src": "10775:200:0", + "trueBody": { + "id": 1158, + "nodeType": "Block", + "src": "10787:188:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b75696e745d", + "id": 1142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10810:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4a5f85d4936ddbc273c762d0b3a90fefdc47bf4d5496816359b86f70b5c74f9", + "typeString": "literal_string \"Error: a < b not satisfied [uint]\"" + }, + "value": "Error: a < b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4a5f85d4936ddbc273c762d0b3a90fefdc47bf4d5496816359b86f70b5c74f9", + "typeString": "literal_string \"Error: a < b not satisfied [uint]\"" + } + ], + "id": 1141, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10806:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1143, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10806:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1144, + "nodeType": "EmitStatement", + "src": "10801:45:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10880:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1147, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1133, + "src": "10893:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1145, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10865:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10865:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1149, + "nodeType": "EmitStatement", + "src": "10860:35:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1151, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10929:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1152, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1135, + "src": "10942:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1150, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10914:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10914:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1154, + "nodeType": "EmitStatement", + "src": "10909:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1155, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "10958:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10958:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1157, + "nodeType": "ExpressionStatement", + "src": "10958:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLt", + "nameLocation": "10731:8:0", + "parameters": { + "id": 1136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1133, + "mutability": "mutable", + "name": "a", + "nameLocation": "10745:1:0", + "nodeType": "VariableDeclaration", + "scope": 1161, + "src": "10740:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1132, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10740:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1135, + "mutability": "mutable", + "name": "b", + "nameLocation": "10753:1:0", + "nodeType": "VariableDeclaration", + "scope": 1161, + "src": "10748:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1134, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "10748:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10739:16:0" + }, + "returnParameters": { + "id": 1137, + "nodeType": "ParameterList", + "parameters": [], + "src": "10765:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1186, + "nodeType": "FunctionDefinition", + "src": "10986:178:0", + "body": { + "id": 1185, + "nodeType": "Block", + "src": "11048:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1172, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1170, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1163, + "src": "11062:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1171, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "11067:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11062:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1184, + "nodeType": "IfStatement", + "src": "11058:100:0", + "trueBody": { + "id": 1183, + "nodeType": "Block", + "src": "11070:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11106:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1175, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1167, + "src": "11115:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1173, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11089:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1176, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11089:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1177, + "nodeType": "EmitStatement", + "src": "11084:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1179, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1163, + "src": "11142:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1180, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1165, + "src": "11145:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1178, + "name": "assertLt", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1161, + 1186, + 1216, + 1241 + ], + "referencedDeclaration": 1161, + "src": "11133:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 1181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11133:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1182, + "nodeType": "ExpressionStatement", + "src": "11133:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLt", + "nameLocation": "10995:8:0", + "parameters": { + "id": 1168, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1163, + "mutability": "mutable", + "name": "a", + "nameLocation": "11009:1:0", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "11004:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1162, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11004:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1165, + "mutability": "mutable", + "name": "b", + "nameLocation": "11017:1:0", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "11012:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1164, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11012:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1167, + "mutability": "mutable", + "name": "err", + "nameLocation": "11034:3:0", + "nodeType": "VariableDeclaration", + "scope": 1186, + "src": "11020:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1166, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11020:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11003:35:0" + }, + "returnParameters": { + "id": 1169, + "nodeType": "ParameterList", + "parameters": [], + "src": "11048:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1216, + "nodeType": "FunctionDefinition", + "src": "11169:254:0", + "body": { + "id": 1215, + "nodeType": "Block", + "src": "11210:213:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1195, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1193, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1188, + "src": "11224:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1194, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1190, + "src": "11229:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "11224:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1214, + "nodeType": "IfStatement", + "src": "11220:197:0", + "trueBody": { + "id": 1213, + "nodeType": "Block", + "src": "11232:185:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b696e745d", + "id": 1197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11255:34:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_62edb5e296dde1308ab599c3156f51dcd32b6d82784df4b0c0246d307d4bd055", + "typeString": "literal_string \"Error: a < b not satisfied [int]\"" + }, + "value": "Error: a < b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_62edb5e296dde1308ab599c3156f51dcd32b6d82784df4b0c0246d307d4bd055", + "typeString": "literal_string \"Error: a < b not satisfied [int]\"" + } + ], + "id": 1196, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11251:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11251:39:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1199, + "nodeType": "EmitStatement", + "src": "11246:44:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1201, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11323:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1202, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1188, + "src": "11336:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1200, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "11309:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 1203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11309:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1204, + "nodeType": "EmitStatement", + "src": "11304:34:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1206, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11371:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1207, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1190, + "src": "11384:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1205, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "11357:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11357:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1209, + "nodeType": "EmitStatement", + "src": "11352:34:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1210, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "11400:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1211, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11400:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1212, + "nodeType": "ExpressionStatement", + "src": "11400:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLt", + "nameLocation": "11178:8:0", + "parameters": { + "id": 1191, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1188, + "mutability": "mutable", + "name": "a", + "nameLocation": "11191:1:0", + "nodeType": "VariableDeclaration", + "scope": 1216, + "src": "11187:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1187, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11187:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1190, + "mutability": "mutable", + "name": "b", + "nameLocation": "11198:1:0", + "nodeType": "VariableDeclaration", + "scope": 1216, + "src": "11194:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1189, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11194:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "11186:14:0" + }, + "returnParameters": { + "id": 1192, + "nodeType": "ParameterList", + "parameters": [], + "src": "11210:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1241, + "nodeType": "FunctionDefinition", + "src": "11428:176:0", + "body": { + "id": 1240, + "nodeType": "Block", + "src": "11488:116:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1225, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1218, + "src": "11502:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1226, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1220, + "src": "11507:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "11502:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1239, + "nodeType": "IfStatement", + "src": "11498:100:0", + "trueBody": { + "id": 1238, + "nodeType": "Block", + "src": "11510:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11546:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1230, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1222, + "src": "11555:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1228, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11529:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11529:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1232, + "nodeType": "EmitStatement", + "src": "11524:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1234, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1218, + "src": "11582:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1235, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1220, + "src": "11585:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1233, + "name": "assertLt", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1161, + 1186, + 1216, + 1241 + ], + "referencedDeclaration": 1216, + "src": "11573:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 1236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11573:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1237, + "nodeType": "ExpressionStatement", + "src": "11573:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLt", + "nameLocation": "11437:8:0", + "parameters": { + "id": 1223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1218, + "mutability": "mutable", + "name": "a", + "nameLocation": "11450:1:0", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "11446:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1217, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11446:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1220, + "mutability": "mutable", + "name": "b", + "nameLocation": "11457:1:0", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "11453:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1219, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11453:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1222, + "mutability": "mutable", + "name": "err", + "nameLocation": "11474:3:0", + "nodeType": "VariableDeclaration", + "scope": 1241, + "src": "11460:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1221, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11460:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11445:33:0" + }, + "returnParameters": { + "id": 1224, + "nodeType": "ParameterList", + "parameters": [], + "src": "11488:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1275, + "nodeType": "FunctionDefinition", + "src": "11609:320:0", + "body": { + "id": 1274, + "nodeType": "Block", + "src": "11672:257:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1252, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1250, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1243, + "src": "11686:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1251, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "11691:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "11686:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1273, + "nodeType": "IfStatement", + "src": "11682:241:0", + "trueBody": { + "id": 1272, + "nodeType": "Block", + "src": "11694:229:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c20696e745d", + "id": 1254, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11717:42:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a598de9e78c706978d3e40be19632446c2f234152ee02226f88acff1b63da79a", + "typeString": "literal_string \"Error: a < b not satisfied [decimal int]\"" + }, + "value": "Error: a < b not satisfied [decimal int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a598de9e78c706978d3e40be19632446c2f234152ee02226f88acff1b63da79a", + "typeString": "literal_string \"Error: a < b not satisfied [decimal int]\"" + } + ], + "id": 1253, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11713:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1255, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11713:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1256, + "nodeType": "EmitStatement", + "src": "11708:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1258, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11801:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1259, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1243, + "src": "11814:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1260, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1247, + "src": "11817:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1257, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "11779:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1261, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11779:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1262, + "nodeType": "EmitStatement", + "src": "11774:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11867:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1265, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1245, + "src": "11880:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1266, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1247, + "src": "11883:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1263, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "11845:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1267, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11845:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1268, + "nodeType": "EmitStatement", + "src": "11840:52:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1269, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "11906:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11906:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1271, + "nodeType": "ExpressionStatement", + "src": "11906:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLtDecimal", + "nameLocation": "11618:15:0", + "parameters": { + "id": 1248, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1243, + "mutability": "mutable", + "name": "a", + "nameLocation": "11638:1:0", + "nodeType": "VariableDeclaration", + "scope": 1275, + "src": "11634:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1242, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11634:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1245, + "mutability": "mutable", + "name": "b", + "nameLocation": "11645:1:0", + "nodeType": "VariableDeclaration", + "scope": 1275, + "src": "11641:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1244, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11641:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1247, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "11653:8:0", + "nodeType": "VariableDeclaration", + "scope": 1275, + "src": "11648:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1246, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11648:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "11633:29:0" + }, + "returnParameters": { + "id": 1249, + "nodeType": "ParameterList", + "parameters": [], + "src": "11672:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1303, + "nodeType": "FunctionDefinition", + "src": "11934:215:0", + "body": { + "id": 1302, + "nodeType": "Block", + "src": "12016:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1286, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1277, + "src": "12030:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1287, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1279, + "src": "12035:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "12030:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1301, + "nodeType": "IfStatement", + "src": "12026:117:0", + "trueBody": { + "id": 1300, + "nodeType": "Block", + "src": "12038:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1290, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12074:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1291, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1283, + "src": "12083:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1289, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "12057:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1292, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12057:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1293, + "nodeType": "EmitStatement", + "src": "12052:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1295, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1277, + "src": "12117:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1296, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1279, + "src": "12120:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1297, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1281, + "src": "12123:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1294, + "name": "assertLtDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1275, + 1303, + 1337, + 1365 + ], + "referencedDeclaration": 1275, + "src": "12101:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 1298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12101:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1299, + "nodeType": "ExpressionStatement", + "src": "12101:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLtDecimal", + "nameLocation": "11943:15:0", + "parameters": { + "id": 1284, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1277, + "mutability": "mutable", + "name": "a", + "nameLocation": "11963:1:0", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "11959:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1276, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11959:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1279, + "mutability": "mutable", + "name": "b", + "nameLocation": "11970:1:0", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "11966:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1278, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "11966:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1281, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "11978:8:0", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "11973:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1280, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "11973:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1283, + "mutability": "mutable", + "name": "err", + "nameLocation": "12002:3:0", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "11988:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1282, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11988:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11958:48:0" + }, + "returnParameters": { + "id": 1285, + "nodeType": "ParameterList", + "parameters": [], + "src": "12016:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1337, + "nodeType": "FunctionDefinition", + "src": "12154:325:0", + "body": { + "id": 1336, + "nodeType": "Block", + "src": "12219:260:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1312, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "12233:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1313, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "12238:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12233:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1335, + "nodeType": "IfStatement", + "src": "12229:244:0", + "trueBody": { + "id": 1334, + "nodeType": "Block", + "src": "12241:232:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c2062206e6f7420736174697366696564205b646563696d616c2075696e745d", + "id": 1316, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12264:43:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8057606f9e67842ac0149f4a7ffdaca59331aea176cd1419e89b7b4b21bbc6d9", + "typeString": "literal_string \"Error: a < b not satisfied [decimal uint]\"" + }, + "value": "Error: a < b not satisfied [decimal uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8057606f9e67842ac0149f4a7ffdaca59331aea176cd1419e89b7b4b21bbc6d9", + "typeString": "literal_string \"Error: a < b not satisfied [decimal uint]\"" + } + ], + "id": 1315, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12260:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12260:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1318, + "nodeType": "EmitStatement", + "src": "12255:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1320, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12350:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1321, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "12363:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1322, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "12366:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1319, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12327:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1323, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12327:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1324, + "nodeType": "EmitStatement", + "src": "12322:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12417:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1327, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1307, + "src": "12430:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1328, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1309, + "src": "12433:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1325, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12394:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1329, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12394:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1330, + "nodeType": "EmitStatement", + "src": "12389:53:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1331, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "12456:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1332, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12456:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1333, + "nodeType": "ExpressionStatement", + "src": "12456:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLtDecimal", + "nameLocation": "12163:15:0", + "parameters": { + "id": 1310, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1305, + "mutability": "mutable", + "name": "a", + "nameLocation": "12184:1:0", + "nodeType": "VariableDeclaration", + "scope": 1337, + "src": "12179:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1304, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12179:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1307, + "mutability": "mutable", + "name": "b", + "nameLocation": "12192:1:0", + "nodeType": "VariableDeclaration", + "scope": 1337, + "src": "12187:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1306, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12187:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1309, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "12200:8:0", + "nodeType": "VariableDeclaration", + "scope": 1337, + "src": "12195:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1308, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12195:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12178:31:0" + }, + "returnParameters": { + "id": 1311, + "nodeType": "ParameterList", + "parameters": [], + "src": "12219:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1365, + "nodeType": "FunctionDefinition", + "src": "12484:217:0", + "body": { + "id": 1364, + "nodeType": "Block", + "src": "12568:133:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1348, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1339, + "src": "12582:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "id": 1349, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1341, + "src": "12587:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12582:6:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1363, + "nodeType": "IfStatement", + "src": "12578:117:0", + "trueBody": { + "id": 1362, + "nodeType": "Block", + "src": "12590:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12626:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1353, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1345, + "src": "12635:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1351, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "12609:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1354, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12609:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1355, + "nodeType": "EmitStatement", + "src": "12604:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1357, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1339, + "src": "12669:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1358, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1341, + "src": "12672:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1359, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1343, + "src": "12675:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1356, + "name": "assertLtDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1275, + 1303, + 1337, + 1365 + ], + "referencedDeclaration": 1337, + "src": "12653:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 1360, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12653:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1361, + "nodeType": "ExpressionStatement", + "src": "12653:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLtDecimal", + "nameLocation": "12493:15:0", + "parameters": { + "id": 1346, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1339, + "mutability": "mutable", + "name": "a", + "nameLocation": "12514:1:0", + "nodeType": "VariableDeclaration", + "scope": 1365, + "src": "12509:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1338, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12509:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1341, + "mutability": "mutable", + "name": "b", + "nameLocation": "12522:1:0", + "nodeType": "VariableDeclaration", + "scope": 1365, + "src": "12517:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1340, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12517:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1343, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "12530:8:0", + "nodeType": "VariableDeclaration", + "scope": 1365, + "src": "12525:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1342, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12525:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1345, + "mutability": "mutable", + "name": "err", + "nameLocation": "12554:3:0", + "nodeType": "VariableDeclaration", + "scope": 1365, + "src": "12540:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1344, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12540:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12508:50:0" + }, + "returnParameters": { + "id": 1347, + "nodeType": "ParameterList", + "parameters": [], + "src": "12568:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1395, + "nodeType": "FunctionDefinition", + "src": "12707:259:0", + "body": { + "id": 1394, + "nodeType": "Block", + "src": "12750:216:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1374, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1372, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1367, + "src": "12764:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1373, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1369, + "src": "12768:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12764:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1393, + "nodeType": "IfStatement", + "src": "12760:200:0", + "trueBody": { + "id": 1392, + "nodeType": "Block", + "src": "12771:189:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b75696e745d", + "id": 1376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12794:36:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6d5420eec28b94f3fd7dd1c7ce81f45c79bfa9fab37300faf965a8d6272e32ff", + "typeString": "literal_string \"Error: a <= b not satisfied [uint]\"" + }, + "value": "Error: a <= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6d5420eec28b94f3fd7dd1c7ce81f45c79bfa9fab37300faf965a8d6272e32ff", + "typeString": "literal_string \"Error: a <= b not satisfied [uint]\"" + } + ], + "id": 1375, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12790:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12790:41:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1378, + "nodeType": "EmitStatement", + "src": "12785:46:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12865:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1381, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1367, + "src": "12878:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1379, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "12850:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12850:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1383, + "nodeType": "EmitStatement", + "src": "12845:35:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1385, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12914:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1386, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1369, + "src": "12927:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1384, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "12899:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 1387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12899:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1388, + "nodeType": "EmitStatement", + "src": "12894:35:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1389, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "12943:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12943:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1391, + "nodeType": "ExpressionStatement", + "src": "12943:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLe", + "nameLocation": "12716:8:0", + "parameters": { + "id": 1370, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1367, + "mutability": "mutable", + "name": "a", + "nameLocation": "12730:1:0", + "nodeType": "VariableDeclaration", + "scope": 1395, + "src": "12725:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1366, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12725:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1369, + "mutability": "mutable", + "name": "b", + "nameLocation": "12738:1:0", + "nodeType": "VariableDeclaration", + "scope": 1395, + "src": "12733:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1368, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12733:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12724:16:0" + }, + "returnParameters": { + "id": 1371, + "nodeType": "ParameterList", + "parameters": [], + "src": "12750:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1420, + "nodeType": "FunctionDefinition", + "src": "12971:177:0", + "body": { + "id": 1419, + "nodeType": "Block", + "src": "13033:115:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1404, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "13047:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1405, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1399, + "src": "13051:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13047:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1418, + "nodeType": "IfStatement", + "src": "13043:99:0", + "trueBody": { + "id": 1417, + "nodeType": "Block", + "src": "13054:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1408, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13090:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1409, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1401, + "src": "13099:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1407, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13073:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13073:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1411, + "nodeType": "EmitStatement", + "src": "13068:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1397, + "src": "13126:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1414, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1399, + "src": "13129:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1412, + "name": "assertLe", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1395, + 1420, + 1450, + 1475 + ], + "referencedDeclaration": 1395, + "src": "13117:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 1415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13117:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1416, + "nodeType": "ExpressionStatement", + "src": "13117:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLe", + "nameLocation": "12980:8:0", + "parameters": { + "id": 1402, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1397, + "mutability": "mutable", + "name": "a", + "nameLocation": "12994:1:0", + "nodeType": "VariableDeclaration", + "scope": 1420, + "src": "12989:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1396, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12989:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1399, + "mutability": "mutable", + "name": "b", + "nameLocation": "13002:1:0", + "nodeType": "VariableDeclaration", + "scope": 1420, + "src": "12997:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1398, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "12997:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1401, + "mutability": "mutable", + "name": "err", + "nameLocation": "13019:3:0", + "nodeType": "VariableDeclaration", + "scope": 1420, + "src": "13005:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1400, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13005:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12988:35:0" + }, + "returnParameters": { + "id": 1403, + "nodeType": "ParameterList", + "parameters": [], + "src": "13033:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1450, + "nodeType": "FunctionDefinition", + "src": "13153:254:0", + "body": { + "id": 1449, + "nodeType": "Block", + "src": "13194:213:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1427, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1422, + "src": "13208:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1428, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1424, + "src": "13212:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "13208:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1448, + "nodeType": "IfStatement", + "src": "13204:197:0", + "trueBody": { + "id": 1447, + "nodeType": "Block", + "src": "13215:186:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b696e745d", + "id": 1431, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13238:35:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_558ba41c44b763b352271d6c22f0cb02f5c0c4dbb25ed68172916a4e6a662555", + "typeString": "literal_string \"Error: a <= b not satisfied [int]\"" + }, + "value": "Error: a <= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_558ba41c44b763b352271d6c22f0cb02f5c0c4dbb25ed68172916a4e6a662555", + "typeString": "literal_string \"Error: a <= b not satisfied [int]\"" + } + ], + "id": 1430, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "13234:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1432, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13234:40:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1433, + "nodeType": "EmitStatement", + "src": "13229:45:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13307:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1436, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1422, + "src": "13320:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1434, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "13293:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 1437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13293:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1438, + "nodeType": "EmitStatement", + "src": "13288:34:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13355:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1441, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1424, + "src": "13368:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1439, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "13341:13:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 1442, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13341:29:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1443, + "nodeType": "EmitStatement", + "src": "13336:34:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1444, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "13384:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13384:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1446, + "nodeType": "ExpressionStatement", + "src": "13384:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLe", + "nameLocation": "13162:8:0", + "parameters": { + "id": 1425, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1422, + "mutability": "mutable", + "name": "a", + "nameLocation": "13175:1:0", + "nodeType": "VariableDeclaration", + "scope": 1450, + "src": "13171:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1421, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13171:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1424, + "mutability": "mutable", + "name": "b", + "nameLocation": "13182:1:0", + "nodeType": "VariableDeclaration", + "scope": 1450, + "src": "13178:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1423, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13178:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "13170:14:0" + }, + "returnParameters": { + "id": 1426, + "nodeType": "ParameterList", + "parameters": [], + "src": "13194:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1475, + "nodeType": "FunctionDefinition", + "src": "13412:175:0", + "body": { + "id": 1474, + "nodeType": "Block", + "src": "13472:115:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1459, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1452, + "src": "13486:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1460, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "13490:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "13486:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1473, + "nodeType": "IfStatement", + "src": "13482:99:0", + "trueBody": { + "id": 1472, + "nodeType": "Block", + "src": "13493:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13529:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1464, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "13538:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1462, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13512:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1465, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13512:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1466, + "nodeType": "EmitStatement", + "src": "13507:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1468, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1452, + "src": "13565:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1469, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "13568:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 1467, + "name": "assertLe", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1395, + 1420, + 1450, + 1475 + ], + "referencedDeclaration": 1450, + "src": "13556:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 1470, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13556:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1471, + "nodeType": "ExpressionStatement", + "src": "13556:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLe", + "nameLocation": "13421:8:0", + "parameters": { + "id": 1457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1452, + "mutability": "mutable", + "name": "a", + "nameLocation": "13434:1:0", + "nodeType": "VariableDeclaration", + "scope": 1475, + "src": "13430:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1451, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13430:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1454, + "mutability": "mutable", + "name": "b", + "nameLocation": "13441:1:0", + "nodeType": "VariableDeclaration", + "scope": 1475, + "src": "13437:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1453, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13437:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1456, + "mutability": "mutable", + "name": "err", + "nameLocation": "13458:3:0", + "nodeType": "VariableDeclaration", + "scope": 1475, + "src": "13444:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1455, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13444:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13429:33:0" + }, + "returnParameters": { + "id": 1458, + "nodeType": "ParameterList", + "parameters": [], + "src": "13472:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1509, + "nodeType": "FunctionDefinition", + "src": "13592:320:0", + "body": { + "id": 1508, + "nodeType": "Block", + "src": "13655:257:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1486, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1484, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1477, + "src": "13669:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1485, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1479, + "src": "13673:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "13669:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1507, + "nodeType": "IfStatement", + "src": "13665:241:0", + "trueBody": { + "id": 1506, + "nodeType": "Block", + "src": "13676:230:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c20696e745d", + "id": 1488, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13699:43:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a855fbfffc345e8a0ab544e824618dabd995fdc5bda653c7d4869b57deb1d23a", + "typeString": "literal_string \"Error: a <= b not satisfied [decimal int]\"" + }, + "value": "Error: a <= b not satisfied [decimal int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a855fbfffc345e8a0ab544e824618dabd995fdc5bda653c7d4869b57deb1d23a", + "typeString": "literal_string \"Error: a <= b not satisfied [decimal int]\"" + } + ], + "id": 1487, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "13695:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1489, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13695:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1490, + "nodeType": "EmitStatement", + "src": "13690:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13784:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1493, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1477, + "src": "13797:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1494, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1481, + "src": "13800:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1491, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "13762:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13762:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1496, + "nodeType": "EmitStatement", + "src": "13757:52:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1498, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13850:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1499, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1479, + "src": "13863:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1500, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1481, + "src": "13866:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1497, + "name": "log_named_decimal_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 53, + "src": "13828:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,int256,uint256)" + } + }, + "id": 1501, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13828:47:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1502, + "nodeType": "EmitStatement", + "src": "13823:52:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1503, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "13889:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13889:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1505, + "nodeType": "ExpressionStatement", + "src": "13889:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLeDecimal", + "nameLocation": "13601:15:0", + "parameters": { + "id": 1482, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1477, + "mutability": "mutable", + "name": "a", + "nameLocation": "13621:1:0", + "nodeType": "VariableDeclaration", + "scope": 1509, + "src": "13617:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1476, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13617:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1479, + "mutability": "mutable", + "name": "b", + "nameLocation": "13628:1:0", + "nodeType": "VariableDeclaration", + "scope": 1509, + "src": "13624:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1478, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13624:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1481, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "13636:8:0", + "nodeType": "VariableDeclaration", + "scope": 1509, + "src": "13631:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1480, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13631:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "13616:29:0" + }, + "returnParameters": { + "id": 1483, + "nodeType": "ParameterList", + "parameters": [], + "src": "13655:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1537, + "nodeType": "FunctionDefinition", + "src": "13917:214:0", + "body": { + "id": 1536, + "nodeType": "Block", + "src": "13999:132:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 1522, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1520, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1511, + "src": "14013:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1521, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1513, + "src": "14017:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "14013:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1535, + "nodeType": "IfStatement", + "src": "14009:116:0", + "trueBody": { + "id": 1534, + "nodeType": "Block", + "src": "14020:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1524, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14056:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1525, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1517, + "src": "14065:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1523, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "14039:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14039:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1527, + "nodeType": "EmitStatement", + "src": "14034:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1529, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1511, + "src": "14099:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1530, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1513, + "src": "14102:1:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 1531, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1515, + "src": "14105:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1528, + "name": "assertLeDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1509, + 1537, + 1571, + 1599 + ], + "referencedDeclaration": 1509, + "src": "14083:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 1532, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14083:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1533, + "nodeType": "ExpressionStatement", + "src": "14083:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLeDecimal", + "nameLocation": "13926:15:0", + "parameters": { + "id": 1518, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1511, + "mutability": "mutable", + "name": "a", + "nameLocation": "13946:1:0", + "nodeType": "VariableDeclaration", + "scope": 1537, + "src": "13942:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1510, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13942:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1513, + "mutability": "mutable", + "name": "b", + "nameLocation": "13953:1:0", + "nodeType": "VariableDeclaration", + "scope": 1537, + "src": "13949:5:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 1512, + "name": "int", + "nodeType": "ElementaryTypeName", + "src": "13949:3:0", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1515, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "13961:8:0", + "nodeType": "VariableDeclaration", + "scope": 1537, + "src": "13956:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1514, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "13956:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1517, + "mutability": "mutable", + "name": "err", + "nameLocation": "13985:3:0", + "nodeType": "VariableDeclaration", + "scope": 1537, + "src": "13971:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1516, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "13971:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "13941:48:0" + }, + "returnParameters": { + "id": 1519, + "nodeType": "ParameterList", + "parameters": [], + "src": "13999:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1571, + "nodeType": "FunctionDefinition", + "src": "14136:325:0", + "body": { + "id": 1570, + "nodeType": "Block", + "src": "14201:260:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1548, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1546, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1539, + "src": "14215:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1547, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1541, + "src": "14219:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14215:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1569, + "nodeType": "IfStatement", + "src": "14211:244:0", + "trueBody": { + "id": 1568, + "nodeType": "Block", + "src": "14222:233:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203c3d2062206e6f7420736174697366696564205b646563696d616c2075696e745d", + "id": 1550, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14245:44:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_32bce37771ce1d01bc601c73b51f2296c0d8e2a50c2d19a6ac89c6b917715c51", + "typeString": "literal_string \"Error: a <= b not satisfied [decimal uint]\"" + }, + "value": "Error: a <= b not satisfied [decimal uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_32bce37771ce1d01bc601c73b51f2296c0d8e2a50c2d19a6ac89c6b917715c51", + "typeString": "literal_string \"Error: a <= b not satisfied [decimal uint]\"" + } + ], + "id": 1549, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "14241:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1551, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14241:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1552, + "nodeType": "EmitStatement", + "src": "14236:54:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652061", + "id": 1554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14332:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + "value": " Value a" + }, + { + "id": 1555, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1539, + "src": "14345:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1556, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1543, + "src": "14348:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c592b529b874569f165479a5a4380dedf000796f11e04035f76bfa7310b31d26", + "typeString": "literal_string \" Value a\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1553, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "14309:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1557, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14309:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1558, + "nodeType": "EmitStatement", + "src": "14304:53:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202056616c75652062", + "id": 1560, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14399:11:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + "value": " Value b" + }, + { + "id": 1561, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1541, + "src": "14412:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1562, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1543, + "src": "14415:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e4b1d025132960c3fb1a582cf2366864dc416744d1b9770aa69fe3749623ebc3", + "typeString": "literal_string \" Value b\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1559, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "14376:22:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 1563, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14376:48:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1564, + "nodeType": "EmitStatement", + "src": "14371:53:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1565, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "14438:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14438:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1567, + "nodeType": "ExpressionStatement", + "src": "14438:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLeDecimal", + "nameLocation": "14145:15:0", + "parameters": { + "id": 1544, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1539, + "mutability": "mutable", + "name": "a", + "nameLocation": "14166:1:0", + "nodeType": "VariableDeclaration", + "scope": 1571, + "src": "14161:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1538, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14161:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1541, + "mutability": "mutable", + "name": "b", + "nameLocation": "14174:1:0", + "nodeType": "VariableDeclaration", + "scope": 1571, + "src": "14169:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1540, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14169:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1543, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "14182:8:0", + "nodeType": "VariableDeclaration", + "scope": 1571, + "src": "14177:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1542, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14177:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14160:31:0" + }, + "returnParameters": { + "id": 1545, + "nodeType": "ParameterList", + "parameters": [], + "src": "14201:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1599, + "nodeType": "FunctionDefinition", + "src": "14466:216:0", + "body": { + "id": 1598, + "nodeType": "Block", + "src": "14550:132:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1582, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1573, + "src": "14564:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 1583, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1575, + "src": "14568:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14564:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1597, + "nodeType": "IfStatement", + "src": "14560:116:0", + "trueBody": { + "id": 1596, + "nodeType": "Block", + "src": "14571:105:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1586, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14607:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1587, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1579, + "src": "14616:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1585, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "14590:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1588, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14590:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1589, + "nodeType": "EmitStatement", + "src": "14585:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1591, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1573, + "src": "14650:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1592, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1575, + "src": "14653:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 1593, + "name": "decimals", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1577, + "src": "14656:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 1590, + "name": "assertGeDecimal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1041, + 1069, + 1103, + 1131 + ], + "referencedDeclaration": 1103, + "src": "14634:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 1594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14634:31:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1595, + "nodeType": "ExpressionStatement", + "src": "14634:31:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertLeDecimal", + "nameLocation": "14475:15:0", + "parameters": { + "id": 1580, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1573, + "mutability": "mutable", + "name": "a", + "nameLocation": "14496:1:0", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "14491:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1572, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14491:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1575, + "mutability": "mutable", + "name": "b", + "nameLocation": "14504:1:0", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "14499:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1574, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14499:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1577, + "mutability": "mutable", + "name": "decimals", + "nameLocation": "14512:8:0", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "14507:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1576, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "14507:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1579, + "mutability": "mutable", + "name": "err", + "nameLocation": "14536:3:0", + "nodeType": "VariableDeclaration", + "scope": 1599, + "src": "14522:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1578, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14522:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "14490:50:0" + }, + "returnParameters": { + "id": 1581, + "nodeType": "ParameterList", + "parameters": [], + "src": "14550:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1639, + "nodeType": "FunctionDefinition", + "src": "14688:344:0", + "body": { + "id": 1638, + "nodeType": "Block", + "src": "14749:283:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 1609, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1601, + "src": "14790:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 1607, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14773:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1608, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "14773:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14773:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1606, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "14763:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14763:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 1615, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "14824:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 1613, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14807:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1614, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "14807:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1616, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14807:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1612, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "14797:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14797:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "14763:64:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1637, + "nodeType": "IfStatement", + "src": "14759:267:0", + "trueBody": { + "id": 1636, + "nodeType": "Block", + "src": "14829:197:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b737472696e675d", + "id": 1620, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14852:38:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_58e3ca0e65e73c038df3db6a7cab1bf7de300d13038b802ce0f4435889c48e5e", + "typeString": "literal_string \"Error: a == b not satisfied [string]\"" + }, + "value": "Error: a == b not satisfied [string]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_58e3ca0e65e73c038df3db6a7cab1bf7de300d13038b802ce0f4435889c48e5e", + "typeString": "literal_string \"Error: a == b not satisfied [string]\"" + } + ], + "id": 1619, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "14848:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14848:43:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1622, + "nodeType": "EmitStatement", + "src": "14843:48:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 1624, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14927:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 1625, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "14941:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1623, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "14910:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1626, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14910:33:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1627, + "nodeType": "EmitStatement", + "src": "14905:38:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 1629, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14979:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 1630, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1601, + "src": "14993:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1628, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "14962:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1631, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14962:33:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1632, + "nodeType": "EmitStatement", + "src": "14957:38:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1633, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "15009:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1634, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15009:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1635, + "nodeType": "ExpressionStatement", + "src": "15009:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "14697:8:0", + "parameters": { + "id": 1604, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1601, + "mutability": "mutable", + "name": "a", + "nameLocation": "14720:1:0", + "nodeType": "VariableDeclaration", + "scope": 1639, + "src": "14706:15:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1600, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14706:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1603, + "mutability": "mutable", + "name": "b", + "nameLocation": "14737:1:0", + "nodeType": "VariableDeclaration", + "scope": 1639, + "src": "14723:15:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1602, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "14723:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "14705:34:0" + }, + "returnParameters": { + "id": 1605, + "nodeType": "ParameterList", + "parameters": [], + "src": "14749:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1674, + "nodeType": "FunctionDefinition", + "src": "15037:254:0", + "body": { + "id": 1673, + "nodeType": "Block", + "src": "15117:174:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 1660, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 1651, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1641, + "src": "15158:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 1649, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15141:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "15141:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15141:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1648, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15131:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1653, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15131:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 1657, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1643, + "src": "15192:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 1655, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "15175:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1656, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "15175:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15175:19:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1654, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15165:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 1659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15165:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "15131:64:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1672, + "nodeType": "IfStatement", + "src": "15127:158:0", + "trueBody": { + "id": 1671, + "nodeType": "Block", + "src": "15197:88:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1662, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15233:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1663, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1645, + "src": "15242:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1661, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "15216:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15216:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1665, + "nodeType": "EmitStatement", + "src": "15211:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1667, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1641, + "src": "15269:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "id": 1668, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1643, + "src": "15272:1:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1666, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 1639, + "src": "15260:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1669, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15260:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1670, + "nodeType": "ExpressionStatement", + "src": "15260:14:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "15046:8:0", + "parameters": { + "id": 1646, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1641, + "mutability": "mutable", + "name": "a", + "nameLocation": "15069:1:0", + "nodeType": "VariableDeclaration", + "scope": 1674, + "src": "15055:15:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1640, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15055:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1643, + "mutability": "mutable", + "name": "b", + "nameLocation": "15086:1:0", + "nodeType": "VariableDeclaration", + "scope": 1674, + "src": "15072:15:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1642, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15072:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1645, + "mutability": "mutable", + "name": "err", + "nameLocation": "15103:3:0", + "nodeType": "VariableDeclaration", + "scope": 1674, + "src": "15089:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1644, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15089:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15054:53:0" + }, + "returnParameters": { + "id": 1647, + "nodeType": "ParameterList", + "parameters": [], + "src": "15117:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1726, + "nodeType": "FunctionDefinition", + "src": "15297:345:0", + "body": { + "id": 1725, + "nodeType": "Block", + "src": "15379:263:0", + "statements": [ + { + "expression": { + "id": 1685, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1683, + "name": "ok", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1681, + "src": "15389:2:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1684, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15394:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "15389:9:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1686, + "nodeType": "ExpressionStatement", + "src": "15389:9:0" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1687, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "15412:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1688, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "15412:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "expression": { + "id": 1689, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1678, + "src": "15424:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1690, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "15424:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15412:20:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1723, + "nodeType": "Block", + "src": "15601:35:0", + "statements": [ + { + "expression": { + "id": 1721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1719, + "name": "ok", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1681, + "src": "15615:2:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1720, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15620:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "15615:10:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1722, + "nodeType": "ExpressionStatement", + "src": "15615:10:0" + } + ] + }, + "id": 1724, + "nodeType": "IfStatement", + "src": "15408:228:0", + "trueBody": { + "id": 1718, + "nodeType": "Block", + "src": "15434:161:0", + "statements": [ + { + "body": { + "id": 1716, + "nodeType": "Block", + "src": "15484:101:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 1709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1703, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "15506:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1705, + "indexExpression": { + "id": 1704, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "15508:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "15506:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "baseExpression": { + "id": 1706, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1678, + "src": "15514:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1708, + "indexExpression": { + "id": 1707, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "15516:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "15514:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "src": "15506:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1715, + "nodeType": "IfStatement", + "src": "15502:69:0", + "trueBody": { + "id": 1714, + "nodeType": "Block", + "src": "15520:51:0", + "statements": [ + { + "expression": { + "id": 1712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1710, + "name": "ok", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1681, + "src": "15542:2:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1711, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15547:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "15542:10:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1713, + "nodeType": "ExpressionStatement", + "src": "15542:10:0" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1696, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "15465:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1697, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1676, + "src": "15469:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 1698, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "15469:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "15465:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1717, + "initializationExpression": { + "assignments": [ + 1693 + ], + "declarations": [ + { + "constant": false, + "id": 1693, + "mutability": "mutable", + "name": "i", + "nameLocation": "15458:1:0", + "nodeType": "VariableDeclaration", + "scope": 1717, + "src": "15453:6:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1692, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15453:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1695, + "initialValue": { + "hexValue": "30", + "id": 1694, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15462:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "15453:10:0" + }, + "loopExpression": { + "expression": { + "id": 1701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "15479:3:0", + "subExpression": { + "id": 1700, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1693, + "src": "15479:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1702, + "nodeType": "ExpressionStatement", + "src": "15479:3:0" + }, + "nodeType": "ForStatement", + "src": "15448:137:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkEq0", + "nameLocation": "15306:8:0", + "parameters": { + "id": 1679, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1676, + "mutability": "mutable", + "name": "a", + "nameLocation": "15328:1:0", + "nodeType": "VariableDeclaration", + "scope": 1726, + "src": "15315:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1675, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15315:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1678, + "mutability": "mutable", + "name": "b", + "nameLocation": "15344:1:0", + "nodeType": "VariableDeclaration", + "scope": 1726, + "src": "15331:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1677, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15331:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "15314:32:0" + }, + "returnParameters": { + "id": 1682, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1681, + "mutability": "mutable", + "name": "ok", + "nameLocation": "15375:2:0", + "nodeType": "VariableDeclaration", + "scope": 1726, + "src": "15370:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 1680, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "15370:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "15369:9:0" + }, + "scope": 1786, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1758, + "nodeType": "FunctionDefinition", + "src": "15647:291:0", + "body": { + "id": 1757, + "nodeType": "Block", + "src": "15707:231:0", + "statements": [ + { + "condition": { + "id": 1737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "15721:15:0", + "subExpression": { + "arguments": [ + { + "id": 1734, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1728, + "src": "15731:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1735, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1730, + "src": "15734:1:0", + "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" + } + ], + "id": 1733, + "name": "checkEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1726, + "src": "15722:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory,bytes memory) pure returns (bool)" + } + }, + "id": 1736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15722:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1756, + "nodeType": "IfStatement", + "src": "15717:215:0", + "trueBody": { + "id": 1755, + "nodeType": "Block", + "src": "15738:194:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b62797465735d", + "id": 1739, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15761:37:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_9bb7b728691fe2872efdd27bd07c4a95b3586c3b7ec3afa731a7c21a76e39cfc", + "typeString": "literal_string \"Error: a == b not satisfied [bytes]\"" + }, + "value": "Error: a == b not satisfied [bytes]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_9bb7b728691fe2872efdd27bd07c4a95b3586c3b7ec3afa731a7c21a76e39cfc", + "typeString": "literal_string \"Error: a == b not satisfied [bytes]\"" + } + ], + "id": 1738, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "15757:3:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15757:42:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1741, + "nodeType": "EmitStatement", + "src": "15752:47:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 1743, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15834:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 1744, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1730, + "src": "15848:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1742, + "name": "log_named_bytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 79, + "src": "15818:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string memory,bytes memory)" + } + }, + "id": 1745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15818:32:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1746, + "nodeType": "EmitStatement", + "src": "15813:37:0" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 1748, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15885:12:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 1749, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1728, + "src": "15899:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 1747, + "name": "log_named_bytes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 79, + "src": "15869:15:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (string memory,bytes memory)" + } + }, + "id": 1750, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15869:32:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1751, + "nodeType": "EmitStatement", + "src": "15864:37:0" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 1752, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 216, + "src": "15915:4:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 1753, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15915:6:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1754, + "nodeType": "ExpressionStatement", + "src": "15915:6:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq0", + "nameLocation": "15656:9:0", + "parameters": { + "id": 1731, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1728, + "mutability": "mutable", + "name": "a", + "nameLocation": "15679:1:0", + "nodeType": "VariableDeclaration", + "scope": 1758, + "src": "15666:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1727, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15666:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1730, + "mutability": "mutable", + "name": "b", + "nameLocation": "15695:1:0", + "nodeType": "VariableDeclaration", + "scope": 1758, + "src": "15682:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1729, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15682:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "15665:32:0" + }, + "returnParameters": { + "id": 1732, + "nodeType": "ParameterList", + "parameters": [], + "src": "15707:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 1785, + "nodeType": "FunctionDefinition", + "src": "15943:205:0", + "body": { + "id": 1784, + "nodeType": "Block", + "src": "16022:126:0", + "statements": [ + { + "condition": { + "id": 1771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "16036:15:0", + "subExpression": { + "arguments": [ + { + "id": 1768, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "16046:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1769, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1762, + "src": "16049:1:0", + "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" + } + ], + "id": 1767, + "name": "checkEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1726, + "src": "16037:8:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bool_$", + "typeString": "function (bytes memory,bytes memory) pure returns (bool)" + } + }, + "id": 1770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16037:14:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1783, + "nodeType": "IfStatement", + "src": "16032:110:0", + "trueBody": { + "id": 1782, + "nodeType": "Block", + "src": "16053:89:0", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 1773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16089:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 1774, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1764, + "src": "16098:3:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 1772, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "16072:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 1775, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16072:30:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1776, + "nodeType": "EmitStatement", + "src": "16067:35:0" + }, + { + "expression": { + "arguments": [ + { + "id": 1778, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "16126:1:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 1779, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1762, + "src": "16129:1:0", + "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" + } + ], + "id": 1777, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1758, + "src": "16116:9:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory)" + } + }, + "id": 1780, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16116:15:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1781, + "nodeType": "ExpressionStatement", + "src": "16116:15:0" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq0", + "nameLocation": "15952:9:0", + "parameters": { + "id": 1765, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1760, + "mutability": "mutable", + "name": "a", + "nameLocation": "15975:1:0", + "nodeType": "VariableDeclaration", + "scope": 1785, + "src": "15962:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1759, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15962:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1762, + "mutability": "mutable", + "name": "b", + "nameLocation": "15991:1:0", + "nodeType": "VariableDeclaration", + "scope": 1785, + "src": "15978:14:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 1761, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15978:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1764, + "mutability": "mutable", + "name": "err", + "nameLocation": "16008:3:0", + "nodeType": "VariableDeclaration", + "scope": 1785, + "src": "15994:17:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1763, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15994:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15961:51:0" + }, + "returnParameters": { + "id": 1766, + "nodeType": "ParameterList", + "parameters": [], + "src": "16022:0:0" + }, + "scope": 1786, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "DSTest", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 1786 + ], + "name": "DSTest", + "nameLocation": "724:6:0", + "scope": 1787, + "usedErrors": [] + } + ], + "license": "GPL-3.0-or-later" + }, + "id": 0 +} \ No newline at end of file diff --git a/getting-started/foundry/out/test.sol/Test.json b/getting-started/foundry/out/test.sol/Test.json new file mode 100644 index 00000000..3bed3c54 --- /dev/null +++ b/getting-started/foundry/out/test.sol/Test.json @@ -0,0 +1,35891 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "log_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "log_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "log_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "int256", + "name": "", + "type": "int256" + } + ], + "name": "log_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address", + "name": "val", + "type": "address" + } + ], + "name": "log_named_address", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "val", + "type": "uint256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256[]", + "name": "val", + "type": "int256[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "val", + "type": "address[]" + } + ], + "name": "log_named_array", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "val", + "type": "bytes" + } + ], + "name": "log_named_bytes", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "val", + "type": "bytes32" + } + ], + "name": "log_named_bytes32", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "decimals", + "type": "uint256" + } + ], + "name": "log_named_decimal_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "int256", + "name": "val", + "type": "int256" + } + ], + "name": "log_named_int", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "val", + "type": "string" + } + ], + "name": "log_named_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "key", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "val", + "type": "uint256" + } + ], + "name": "log_named_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "", + "type": "string" + } + ], + "name": "log_string", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "name": "log_uint", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "logs", + "type": "event" + }, + { + "inputs": [], + "name": "IS_SCRIPT", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "IS_TEST", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "adjust", + "type": "bool" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "deal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + }, + { + "internalType": "bytes", + "name": "args", + "type": "bytes" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "what", + "type": "string" + } + ], + "name": "deployCode", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "failed", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "hoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "rewind", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "skip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "internalType": "address", + "name": "origin", + "type": "address" + } + ], + "name": "startHoax", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "give", + "type": "uint256" + } + ], + "name": "tip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "vm", + "outputs": [ + { + "internalType": "contract Vm", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x", + "sourceMap": "", + "linkReferences": {} + }, + "methodIdentifiers": { + "IS_SCRIPT()": "f8ccbf47", + "IS_TEST()": "fa7626d4", + "deal(address,address,uint256)": "6bce989b", + "deal(address,address,uint256,bool)": "97754ae9", + "deal(address,uint256)": "c88a5e6d", + "deployCode(string)": "9a8325a0", + "deployCode(string,bytes)": "29ce9dde", + "failed()": "ba414fa6", + "hoax(address)": "233240ee", + "hoax(address,address)": "29a9e300", + "hoax(address,address,uint256)": "af9bbe5f", + "hoax(address,uint256)": "e9a79a7b", + "rewind(uint256)": "2d6c17a3", + "skip(uint256)": "b9c071b4", + "startHoax(address)": "6f597075", + "startHoax(address,address)": "d06d8229", + "startHoax(address,address,uint256)": "3bf82db1", + "startHoax(address,uint256)": "108554f2", + "tip(address,address,uint256)": "d82555f1", + "vm()": "3a768463" + }, + "ast": { + "absolutePath": "lib/forge-std/src/Test.sol", + "id": 4485, + "exportedSymbols": { + "DSTest": [ + 1786 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "38:25218:2", + "nodes": [ + { + "id": 1820, + "nodeType": "PragmaDirective", + "src": "38:31:2", + "literals": [ + "solidity", + ">=", + "0.6", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 1821, + "nodeType": "ImportDirective", + "src": "71:22:2", + "absolutePath": "lib/forge-std/src/Script.sol", + "file": "./Script.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1819, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1822, + "nodeType": "ImportDirective", + "src": "94:26:2", + "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", + "file": "ds-test/test.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1787, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 3137, + "nodeType": "ContractDefinition", + "src": "170:13108:2", + "nodes": [ + { + "id": 1830, + "nodeType": "UsingForDirective", + "src": "217:32:2", + "global": false, + "libraryName": { + "id": 1827, + "name": "stdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4337, + "src": "223:10:2" + }, + "typeName": { + "id": 1829, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1828, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "238:10:2" + }, + "referencedDeclaration": 3235, + "src": "238:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + } + }, + { + "id": 1833, + "nodeType": "VariableDeclaration", + "src": "255:126:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "281:11:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "255:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 1832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "303:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "internal" + }, + { + "id": 1836, + "nodeType": "VariableDeclaration", + "src": "388:28:2", + "constant": false, + "mutability": "mutable", + "name": "stdstore", + "nameLocation": "408:8:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 1835, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1834, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "388:10:2" + }, + "referencedDeclaration": 3235, + "src": "388:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "id": 1841, + "nodeType": "EventDefinition", + "src": "631:31:2", + "anonymous": false, + "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", + "name": "log_array", + "nameLocation": "637:9:2", + "parameters": { + "id": 1840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1839, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "657:3:2", + "nodeType": "VariableDeclaration", + "scope": 1841, + "src": "647:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1837, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "647:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1838, + "nodeType": "ArrayTypeName", + "src": "647:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "646:15:2" + } + }, + { + "id": 1846, + "nodeType": "EventDefinition", + "src": "667:30:2", + "anonymous": false, + "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", + "name": "log_array", + "nameLocation": "673:9:2", + "parameters": { + "id": 1845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1844, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "692:3:2", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1842, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "683:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1843, + "nodeType": "ArrayTypeName", + "src": "683:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "682:14:2" + } + }, + { + "id": 1851, + "nodeType": "EventDefinition", + "src": "702:31:2", + "anonymous": false, + "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", + "name": "log_array", + "nameLocation": "708:9:2", + "parameters": { + "id": 1850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1849, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "728:3:2", + "nodeType": "VariableDeclaration", + "scope": 1851, + "src": "718:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "718:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1848, + "nodeType": "ArrayTypeName", + "src": "718:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "717:15:2" + } + }, + { + "id": 1858, + "nodeType": "EventDefinition", + "src": "738:49:2", + "anonymous": false, + "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", + "name": "log_named_array", + "nameLocation": "744:15:2", + "parameters": { + "id": 1857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1853, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "767:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "760:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1852, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "760:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1856, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "782:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "772:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "772:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1855, + "nodeType": "ArrayTypeName", + "src": "772:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "759:27:2" + } + }, + { + "id": 1865, + "nodeType": "EventDefinition", + "src": "792:48:2", + "anonymous": false, + "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", + "name": "log_named_array", + "nameLocation": "798:15:2", + "parameters": { + "id": 1864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1860, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "821:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "814:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1859, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "814:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1863, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "835:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "826:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1861, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "826:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1862, + "nodeType": "ArrayTypeName", + "src": "826:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "813:26:2" + } + }, + { + "id": 1872, + "nodeType": "EventDefinition", + "src": "845:49:2", + "anonymous": false, + "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", + "name": "log_named_array", + "nameLocation": "851:15:2", + "parameters": { + "id": 1871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1867, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "874:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "867:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "867:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1870, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "889:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "879:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "879:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1869, + "nodeType": "ArrayTypeName", + "src": "879:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "866:27:2" + } + }, + { + "id": 1887, + "nodeType": "FunctionDefinition", + "src": "1180:83:2", + "body": { + "id": 1886, + "nodeType": "Block", + "src": "1215:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1880, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1233:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1233:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1882, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1874, + "src": "1251:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1233:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1877, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1225:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1225:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1885, + "nodeType": "ExpressionStatement", + "src": "1225:31:2" + } + ] + }, + "functionSelector": "b9c071b4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "skip", + "nameLocation": "1189:4:2", + "parameters": { + "id": 1875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1874, + "mutability": "mutable", + "name": "time", + "nameLocation": "1202:4:2", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "1194:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1193:14:2" + }, + "returnParameters": { + "id": 1876, + "nodeType": "ParameterList", + "parameters": [], + "src": "1215:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1902, + "nodeType": "FunctionDefinition", + "src": "1269:85:2", + "body": { + "id": 1901, + "nodeType": "Block", + "src": "1306:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1895, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1324:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1324:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1897, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "1342:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1324:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1892, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1316:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1316:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1316:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1900, + "nodeType": "ExpressionStatement", + "src": "1316:31:2" + } + ] + }, + "functionSelector": "2d6c17a3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rewind", + "nameLocation": "1278:6:2", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "mutability": "mutable", + "name": "time", + "nameLocation": "1293:4:2", + "nodeType": "VariableDeclaration", + "scope": 1902, + "src": "1285:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1285:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1284:14:2" + }, + "returnParameters": { + "id": 1891, + "nodeType": "ParameterList", + "parameters": [], + "src": "1306:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1923, + "nodeType": "FunctionDefinition", + "src": "1417:96:2", + "body": { + "id": 1922, + "nodeType": "Block", + "src": "1451:62:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1910, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1469:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1474:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1479:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1474:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1907, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1461:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1461:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1461:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1915, + "nodeType": "ExpressionStatement", + "src": "1461:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1919, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1502:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1916, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1493:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1493:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1493:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1921, + "nodeType": "ExpressionStatement", + "src": "1493:13:2" + } + ] + }, + "functionSelector": "233240ee", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1426:4:2", + "parameters": { + "id": 1905, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1904, + "mutability": "mutable", + "name": "who", + "nameLocation": "1439:3:2", + "nodeType": "VariableDeclaration", + "scope": 1923, + "src": "1431:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1903, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1431:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1430:13:2" + }, + "returnParameters": { + "id": 1906, + "nodeType": "ParameterList", + "parameters": [], + "src": "1451:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1944, + "nodeType": "FunctionDefinition", + "src": "1519:106:2", + "body": { + "id": 1943, + "nodeType": "Block", + "src": "1567:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1933, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1934, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "1590:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1930, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1577:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1577:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1577:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1936, + "nodeType": "ExpressionStatement", + "src": "1577:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1940, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1614:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1937, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1605:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1605:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1605:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1942, + "nodeType": "ExpressionStatement", + "src": "1605:13:2" + } + ] + }, + "functionSelector": "e9a79a7b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1528:4:2", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1925, + "mutability": "mutable", + "name": "who", + "nameLocation": "1541:3:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1533:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1533:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1927, + "mutability": "mutable", + "name": "give", + "nameLocation": "1554:4:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1546:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1546:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1532:27:2" + }, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "1567:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1968, + "nodeType": "FunctionDefinition", + "src": "1631:120:2", + "body": { + "id": 1967, + "nodeType": "Block", + "src": "1681:70:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1954, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1699:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1704:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1709:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1704:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1951, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1691:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1691:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1959, + "nodeType": "ExpressionStatement", + "src": "1691:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1963, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1732:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1964, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1948, + "src": "1737:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1960, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1723:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1723:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1966, + "nodeType": "ExpressionStatement", + "src": "1723:21:2" + } + ] + }, + "functionSelector": "29a9e300", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1640:4:2", + "parameters": { + "id": 1949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1946, + "mutability": "mutable", + "name": "who", + "nameLocation": "1653:3:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1645:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1945, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1645:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1948, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1666:6:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1658:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1658:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1644:29:2" + }, + "returnParameters": { + "id": 1950, + "nodeType": "ParameterList", + "parameters": [], + "src": "1681:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1992, + "nodeType": "FunctionDefinition", + "src": "1757:130:2", + "body": { + "id": 1991, + "nodeType": "Block", + "src": "1821:66:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1980, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1839:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1981, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1974, + "src": "1844:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1977, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1831:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1983, + "nodeType": "ExpressionStatement", + "src": "1831:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1987, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1868:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1988, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1972, + "src": "1873:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1984, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1859:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1859:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1859:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1990, + "nodeType": "ExpressionStatement", + "src": "1859:21:2" + } + ] + }, + "functionSelector": "af9bbe5f", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1766:4:2", + "parameters": { + "id": 1975, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1970, + "mutability": "mutable", + "name": "who", + "nameLocation": "1779:3:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1771:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1969, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1771:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1972, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1792:6:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1784:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1784:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1974, + "mutability": "mutable", + "name": "give", + "nameLocation": "1808:4:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1800:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1800:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1770:43:2" + }, + "returnParameters": { + "id": 1976, + "nodeType": "ParameterList", + "parameters": [], + "src": "1821:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2013, + "nodeType": "FunctionDefinition", + "src": "1958:106:2", + "body": { + "id": 2012, + "nodeType": "Block", + "src": "1997:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2000, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2015:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2020:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2025:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2020:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1997, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2007:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2005, + "nodeType": "ExpressionStatement", + "src": "2007:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2009, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2053:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2006, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2039:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2039:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2039:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2011, + "nodeType": "ExpressionStatement", + "src": "2039:18:2" + } + ] + }, + "functionSelector": "6f597075", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "1967:9:2", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1994, + "mutability": "mutable", + "name": "who", + "nameLocation": "1985:3:2", + "nodeType": "VariableDeclaration", + "scope": 2013, + "src": "1977:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1977:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1976:13:2" + }, + "returnParameters": { + "id": 1996, + "nodeType": "ParameterList", + "parameters": [], + "src": "1997:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2034, + "nodeType": "FunctionDefinition", + "src": "2070:116:2", + "body": { + "id": 2033, + "nodeType": "Block", + "src": "2123:63:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2141:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2024, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "2146:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2020, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2133:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2133:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2133:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2026, + "nodeType": "ExpressionStatement", + "src": "2133:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2030, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2175:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2027, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2161:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2161:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2161:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2032, + "nodeType": "ExpressionStatement", + "src": "2161:18:2" + } + ] + }, + "functionSelector": "108554f2", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2079:9:2", + "parameters": { + "id": 2018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2015, + "mutability": "mutable", + "name": "who", + "nameLocation": "2097:3:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2089:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2089:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "give", + "nameLocation": "2110:4:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2102:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2102:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2088:27:2" + }, + "returnParameters": { + "id": 2019, + "nodeType": "ParameterList", + "parameters": [], + "src": "2123:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2058, + "nodeType": "FunctionDefinition", + "src": "2305:130:2", + "body": { + "id": 2057, + "nodeType": "Block", + "src": "2360:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2044, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2378:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2383:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2388:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2383:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 2041, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2370:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2370:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2370:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2049, + "nodeType": "ExpressionStatement", + "src": "2370:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2053, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2416:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2054, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2038, + "src": "2421:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2050, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2402:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2402:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2402:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "2402:26:2" + } + ] + }, + "functionSelector": "d06d8229", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2314:9:2", + "parameters": { + "id": 2039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2036, + "mutability": "mutable", + "name": "who", + "nameLocation": "2332:3:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2324:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2324:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2038, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2345:6:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2337:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2037, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2337:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2323:29:2" + }, + "returnParameters": { + "id": 2040, + "nodeType": "ParameterList", + "parameters": [], + "src": "2360:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2082, + "nodeType": "FunctionDefinition", + "src": "2441:140:2", + "body": { + "id": 2081, + "nodeType": "Block", + "src": "2510:71:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2070, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2528:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2071, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2064, + "src": "2533:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2067, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2520:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2520:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2520:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2073, + "nodeType": "ExpressionStatement", + "src": "2520:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2077, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2562:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2078, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "2567:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2074, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2548:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2548:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2548:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2080, + "nodeType": "ExpressionStatement", + "src": "2548:26:2" + } + ] + }, + "functionSelector": "3bf82db1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2450:9:2", + "parameters": { + "id": 2065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2060, + "mutability": "mutable", + "name": "who", + "nameLocation": "2468:3:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2460:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2059, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2460:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2062, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2481:6:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2473:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2473:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2064, + "mutability": "mutable", + "name": "give", + "nameLocation": "2497:4:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2489:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2489:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2459:43:2" + }, + "returnParameters": { + "id": 2066, + "nodeType": "ParameterList", + "parameters": [], + "src": "2510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2099, + "nodeType": "FunctionDefinition", + "src": "2587:102:2", + "body": { + "id": 2098, + "nodeType": "Block", + "src": "2630:59:2", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2087, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2640:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4726, + "src": "2640:12:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 2090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2640:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2091, + "nodeType": "ExpressionStatement", + "src": "2640:14:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2095, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2084, + "src": "2678:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2092, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2664:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2664:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2664:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2097, + "nodeType": "ExpressionStatement", + "src": "2664:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "changePrank", + "nameLocation": "2596:11:2", + "parameters": { + "id": 2085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2084, + "mutability": "mutable", + "name": "who", + "nameLocation": "2616:3:2", + "nodeType": "VariableDeclaration", + "scope": 2099, + "src": "2608:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2608:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2607:13:2" + }, + "returnParameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [], + "src": "2630:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2129, + "nodeType": "FunctionDefinition", + "src": "2733:341:2", + "body": { + "id": 2128, + "nodeType": "Block", + "src": "2794:280:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "5741524e494e47", + "id": 2109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2826:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + "value": "WARNING" + }, + { + "hexValue": "546573742074697028616464726573732c616464726573732c75696e74323536293a2054686520607469706020737464636865617420686173206265656e20646570726563617465642e2055736520606465616c6020696e73746561642e", + "id": 2110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2837:96:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + }, + "value": "Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + } + ], + "id": 2108, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "2809:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2809:125:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2112, + "nodeType": "EmitStatement", + "src": "2804:130:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2125, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2105, + "src": "3062:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2122, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2103, + "src": "3031:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2116, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2101, + "src": "2973:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2113, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2944:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2115, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "2944:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2118, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "2944:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2121, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "2944:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2124, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "2944:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2127, + "nodeType": "ExpressionStatement", + "src": "2944:123:2" + } + ] + }, + "functionSelector": "d82555f1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tip", + "nameLocation": "2742:3:2", + "parameters": { + "id": 2106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2101, + "mutability": "mutable", + "name": "token", + "nameLocation": "2754:5:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2746:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2746:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2103, + "mutability": "mutable", + "name": "to", + "nameLocation": "2769:2:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2761:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2761:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2105, + "mutability": "mutable", + "name": "give", + "nameLocation": "2781:4:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2773:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2104, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2773:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2745:41:2" + }, + "returnParameters": { + "id": 2107, + "nodeType": "ParameterList", + "parameters": [], + "src": "2794:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2144, + "nodeType": "FunctionDefinition", + "src": "3165:81:2", + "body": { + "id": 2143, + "nodeType": "Block", + "src": "3212:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2139, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "3230:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2140, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "3234:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2136, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "3222:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "3222:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3222:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2142, + "nodeType": "ExpressionStatement", + "src": "3222:17:2" + } + ] + }, + "functionSelector": "c88a5e6d", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3174:4:2", + "parameters": { + "id": 2134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2131, + "mutability": "mutable", + "name": "to", + "nameLocation": "3187:2:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3179:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3179:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2133, + "mutability": "mutable", + "name": "give", + "nameLocation": "3199:4:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3191:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2132, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3191:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3178:26:2" + }, + "returnParameters": { + "id": 2135, + "nodeType": "ParameterList", + "parameters": [], + "src": "3212:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2161, + "nodeType": "FunctionDefinition", + "src": "3370:107:2", + "body": { + "id": 2160, + "nodeType": "Block", + "src": "3432:45:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2154, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2146, + "src": "3447:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2155, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2148, + "src": "3454:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2156, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2150, + "src": "3458:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "66616c7365", + "id": 2157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3464:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2153, + "name": "deal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2144, + 2161, + 2264 + ], + "referencedDeclaration": 2264, + "src": "3442:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$", + "typeString": "function (address,address,uint256,bool)" + } + }, + "id": 2158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3442:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2159, + "nodeType": "ExpressionStatement", + "src": "3442:28:2" + } + ] + }, + "functionSelector": "6bce989b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3379:4:2", + "parameters": { + "id": 2151, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2146, + "mutability": "mutable", + "name": "token", + "nameLocation": "3392:5:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3384:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2145, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3384:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "mutability": "mutable", + "name": "to", + "nameLocation": "3407:2:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3399:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3399:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "mutability": "mutable", + "name": "give", + "nameLocation": "3419:4:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3411:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2149, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3411:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3383:41:2" + }, + "returnParameters": { + "id": 2152, + "nodeType": "ParameterList", + "parameters": [], + "src": "3432:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2264, + "nodeType": "FunctionDefinition", + "src": "3483:915:2", + "body": { + "id": 2263, + "nodeType": "Block", + "src": "3558:840:2", + "statements": [ + { + "assignments": [ + null, + 2173 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2173, + "mutability": "mutable", + "name": "balData", + "nameLocation": "3615:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3602:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2172, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3602:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2182, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3660:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + }, + { + "id": 2179, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3672:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2176, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3637:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "3637:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3637:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2174, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3626:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3626:10:2", + "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": 2181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3626:50:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3599:77:2" + }, + { + "assignments": [ + 2184 + ], + "declarations": [ + { + "constant": false, + "id": 2184, + "mutability": "mutable", + "name": "prevBal", + "nameLocation": "3694:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3686:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2192, + "initialValue": { + "arguments": [ + { + "id": 2187, + "name": "balData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2173, + "src": "3715:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3725:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3725:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2190, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3724:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2185, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3704:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "3704:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3704:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3686:48:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2205, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "3889:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2202, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3858:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3824:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2196, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3800:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2193, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3771:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2195, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "3771:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2198, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "3771:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "3771:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "3771:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2207, + "nodeType": "ExpressionStatement", + "src": "3771:123:2" + }, + { + "condition": { + "id": 2208, + "name": "adjust", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2169, + "src": "3939:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2262, + "nodeType": "IfStatement", + "src": "3936:456:2", + "trueBody": { + "id": 2261, + "nodeType": "Block", + "src": "3946:446:2", + "statements": [ + { + "assignments": [ + null, + 2210 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2210, + "mutability": "mutable", + "name": "totSupData", + "nameLocation": "3976:10:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "3963:23:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2209, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3963:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2218, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "id": 2213, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4001:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "4001:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4001:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2211, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3990:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3990:10:2", + "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": 2217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3990:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3960:76:2" + }, + { + "assignments": [ + 2220 + ], + "declarations": [ + { + "constant": false, + "id": 2220, + "mutability": "mutable", + "name": "totSup", + "nameLocation": "4058:6:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "4050:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4050:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2228, + "initialValue": { + "arguments": [ + { + "id": 2223, + "name": "totSupData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2210, + "src": "4078:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2225, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4091:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4091:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2226, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4090:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2221, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4067:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "4067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4067:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4050:50:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2229, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4117:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2230, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4124:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4117:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2247, + "nodeType": "Block", + "src": "4198:59:2", + "statements": [ + { + "expression": { + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2240, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4216:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2241, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4227:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2242, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4234:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4227:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2244, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4226:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4216:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2246, + "nodeType": "ExpressionStatement", + "src": "4216:26:2" + } + ] + }, + "id": 2248, + "nodeType": "IfStatement", + "src": "4114:143:2", + "trueBody": { + "id": 2239, + "nodeType": "Block", + "src": "4133:59:2", + "statements": [ + { + "expression": { + "id": 2237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2232, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4151:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2233, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4162:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2234, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4172:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4162:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2236, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4161:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4151:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2238, + "nodeType": "ExpressionStatement", + "src": "4151:26:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2258, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4374:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4331:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "arguments": [ + { + "id": 2252, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "4303:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2249, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "4270:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2251, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "4270:32:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "4270:60:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:72:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2257, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "4270:103:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:111:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2260, + "nodeType": "ExpressionStatement", + "src": "4270:111:2" + } + ] + } + } + ] + }, + "functionSelector": "97754ae9", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3492:4:2", + "parameters": { + "id": 2170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2163, + "mutability": "mutable", + "name": "token", + "nameLocation": "3505:5:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3497:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3497:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2165, + "mutability": "mutable", + "name": "to", + "nameLocation": "3520:2:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3512:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3512:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2167, + "mutability": "mutable", + "name": "give", + "nameLocation": "3532:4:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3524:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3524:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2169, + "mutability": "mutable", + "name": "adjust", + "nameLocation": "3543:6:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3538:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3538:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3496:54:2" + }, + "returnParameters": { + "id": 2171, + "nodeType": "ParameterList", + "parameters": [], + "src": "3558:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2328, + "nodeType": "FunctionDefinition", + "src": "4404:578:2", + "body": { + "id": 2327, + "nodeType": "Block", + "src": "4498:484:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2276, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4516:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 2277, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4523:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4516:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "5465737420626f756e642875696e743235362c75696e743235362c75696e74323536293a204d6178206973206c657373207468616e206d696e2e", + "id": 2279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4528:60:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + }, + "value": "Test bound(uint256,uint256,uint256): Max is less than min." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + } + ], + "id": 2275, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:81:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2281, + "nodeType": "ExpressionStatement", + "src": "4508:81:2" + }, + { + "assignments": [ + 2283 + ], + "declarations": [ + { + "constant": false, + "id": 2283, + "mutability": "mutable", + "name": "size", + "nameLocation": "4608:4:2", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "4600:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2282, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4600:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2287, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2284, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4615:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2285, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4621:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4615:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4600:24:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2288, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4639:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4647:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4639:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2296, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4713:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2297, + "name": "UINT256_MAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1833, + "src": "4721:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4713:19:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2319, + "nodeType": "Block", + "src": "4799:123:2", + "statements": [ + { + "expression": { + "id": 2305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "4813:6:2", + "subExpression": { + "id": 2304, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2306, + "nodeType": "ExpressionStatement", + "src": "4813:6:2" + }, + { + "assignments": [ + 2308 + ], + "declarations": [ + { + "constant": false, + "id": 2308, + "mutability": "mutable", + "name": "mod", + "nameLocation": "4865:3:2", + "nodeType": "VariableDeclaration", + "scope": 2319, + "src": "4857:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2307, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4857:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2312, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2309, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 2310, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4875:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4871:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4857:22:2" + }, + { + "expression": { + "id": 2317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2313, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4893:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2314, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4902:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2315, + "name": "mod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "4908:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4893:18:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2318, + "nodeType": "ExpressionStatement", + "src": "4893:18:2" + } + ] + }, + "id": 2320, + "nodeType": "IfStatement", + "src": "4709:213:2", + "trueBody": { + "id": 2303, + "nodeType": "Block", + "src": "4742:35:2", + "statements": [ + { + "expression": { + "id": 2301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2299, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4756:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2300, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4765:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4756:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2302, + "nodeType": "ExpressionStatement", + "src": "4756:10:2" + } + ] + } + }, + "id": 2321, + "nodeType": "IfStatement", + "src": "4635:287:2", + "trueBody": { + "id": 2295, + "nodeType": "Block", + "src": "4658:37:2", + "statements": [ + { + "expression": { + "id": 2293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2291, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4672:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2292, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4681:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4672:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2294, + "nodeType": "ExpressionStatement", + "src": "4672:12:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "426f756e6420526573756c74", + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4952:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + "value": "Bound Result" + }, + { + "id": 2324, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4968:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2322, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "4937:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4937:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2326, + "nodeType": "EmitStatement", + "src": "4932:43:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bound", + "nameLocation": "4413:5:2", + "parameters": { + "id": 2271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2266, + "mutability": "mutable", + "name": "x", + "nameLocation": "4427:1:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4419:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2268, + "mutability": "mutable", + "name": "min", + "nameLocation": "4438:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4430:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2267, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2270, + "mutability": "mutable", + "name": "max", + "nameLocation": "4451:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4443:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2269, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4443:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4418:37:2" + }, + "returnParameters": { + "id": 2274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2273, + "mutability": "mutable", + "name": "result", + "nameLocation": "4490:6:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4482:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2272, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4482:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4481:16:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2360, + "nodeType": "FunctionDefinition", + "src": "5142:455:2", + "body": { + "id": 2359, + "nodeType": "Block", + "src": "5251:346:2", + "statements": [ + { + "assignments": [ + 2338 + ], + "declarations": [ + { + "constant": false, + "id": 2338, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5274:8:2", + "nodeType": "VariableDeclaration", + "scope": 2359, + "src": "5261:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2337, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5261:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2347, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 2343, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2330, + "src": "5313:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2341, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5302:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5302:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5302:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2345, + "name": "args", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2332, + "src": "5320:4:2", + "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": 2339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5285:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "5285:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5285:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5261:64:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5387:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5401:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5416:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5423:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5433:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5419:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5419:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5446:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5440:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5440:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5409:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5409:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5401:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2335, + "isOffset": false, + "isSlot": false, + "src": "5401:4:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5423:8:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5446:8:2", + "valueSize": 1 + } + ], + "id": 2348, + "nodeType": "InlineAssembly", + "src": "5378:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2350, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2335, + "src": "5497:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:1:2", + "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": 2352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5505:7:2", + "typeDescriptions": {} + } + }, + "id": 2354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5505:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5497:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e672c6279746573293a204465706c6f796d656e74206661696c65642e", + "id": 2356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5529:51:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + }, + "value": "Test deployCode(string,bytes): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + } + ], + "id": 2349, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5476:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5476:114:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2358, + "nodeType": "ExpressionStatement", + "src": "5476:114:2" + } + ] + }, + "functionSelector": "29ce9dde", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5151:10:2", + "parameters": { + "id": 2333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2330, + "mutability": "mutable", + "name": "what", + "nameLocation": "5176:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5162:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5162:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2332, + "mutability": "mutable", + "name": "args", + "nameLocation": "5195:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5182:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2331, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5182:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5161:39:2" + }, + "returnParameters": { + "id": 2336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2335, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5241:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5233:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5233:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5232:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2386, + "nodeType": "FunctionDefinition", + "src": "5603:406:2", + "body": { + "id": 2385, + "nodeType": "Block", + "src": "5693:316:2", + "statements": [ + { + "assignments": [ + 2368 + ], + "declarations": [ + { + "constant": false, + "id": 2368, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5716:8:2", + "nodeType": "VariableDeclaration", + "scope": 2385, + "src": "5703:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2367, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5703:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2373, + "initialValue": { + "arguments": [ + { + "id": 2371, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2362, + "src": "5738:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2369, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5727:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5727:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5727:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5703:40:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5805:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5819:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5834:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5841:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5851:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5837:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5837:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5864:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5858:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5858:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5827:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5827:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5819:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2365, + "isOffset": false, + "isSlot": false, + "src": "5819:4:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5841:8:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5864:8:2", + "valueSize": 1 + } + ], + "id": 2374, + "nodeType": "InlineAssembly", + "src": "5796:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2376, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2365, + "src": "5915:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5931:1:2", + "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": 2378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5923:7:2", + "typeDescriptions": {} + } + }, + "id": 2380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5923:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5915:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e67293a204465706c6f796d656e74206661696c65642e", + "id": 2382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5947:45:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + }, + "value": "Test deployCode(string): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + } + ], + "id": 2375, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5894:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5894:108:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2384, + "nodeType": "ExpressionStatement", + "src": "5894:108:2" + } + ] + }, + "functionSelector": "9a8325a0", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5612:10:2", + "parameters": { + "id": 2363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2362, + "mutability": "mutable", + "name": "what", + "nameLocation": "5637:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5623:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2361, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5623:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5622:20:2" + }, + "returnParameters": { + "id": 2366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2365, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5683:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5675:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2364, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5675:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5674:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2400, + "nodeType": "FunctionDefinition", + "src": "6229:118:2", + "body": { + "id": 2399, + "nodeType": "Block", + "src": "6279:68:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6311:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2393, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2388, + "src": "6320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2391, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6294:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6294:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2395, + "nodeType": "EmitStatement", + "src": "6289:35:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2396, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6334:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6334:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2398, + "nodeType": "ExpressionStatement", + "src": "6334:6:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fail", + "nameLocation": "6238:4:2", + "parameters": { + "id": 2389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2388, + "mutability": "mutable", + "name": "err", + "nameLocation": "6257:3:2", + "nodeType": "VariableDeclaration", + "scope": 2400, + "src": "6243:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2387, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6243:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6242:19:2" + }, + "returnParameters": { + "id": 2390, + "nodeType": "ParameterList", + "parameters": [], + "src": "6279:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2411, + "nodeType": "FunctionDefinition", + "src": "6353:83:2", + "body": { + "id": 2410, + "nodeType": "Block", + "src": "6402:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6423:5:2", + "subExpression": { + "id": 2406, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2402, + "src": "6424:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2405, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "6412:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 2408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6412:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2409, + "nodeType": "ExpressionStatement", + "src": "6412:17:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6362:11:2", + "parameters": { + "id": 2403, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2402, + "mutability": "mutable", + "name": "data", + "nameLocation": "6379:4:2", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "6374:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2401, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6374:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6373:11:2" + }, + "returnParameters": { + "id": 2404, + "nodeType": "ParameterList", + "parameters": [], + "src": "6402:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2425, + "nodeType": "FunctionDefinition", + "src": "6442:107:2", + "body": { + "id": 2424, + "nodeType": "Block", + "src": "6510:39:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6531:5:2", + "subExpression": { + "id": 2419, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "6532:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2421, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "6538:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2418, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 290, + "src": "6520:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory)" + } + }, + "id": 2422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6520:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2423, + "nodeType": "ExpressionStatement", + "src": "6520:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6451:11:2", + "parameters": { + "id": 2416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2413, + "mutability": "mutable", + "name": "data", + "nameLocation": "6468:4:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6463:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2412, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6463:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "err", + "nameLocation": "6488:3:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6474:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2414, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6474:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6462:30:2" + }, + "returnParameters": { + "id": 2417, + "nodeType": "ParameterList", + "parameters": [], + "src": "6510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2461, + "nodeType": "FunctionDefinition", + "src": "6555:326:2", + "body": { + "id": 2460, + "nodeType": "Block", + "src": "6598:283:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2432, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6612:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2433, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6617:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6612:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2459, + "nodeType": "IfStatement", + "src": "6608:267:2", + "trueBody": { + "id": 2458, + "nodeType": "Block", + "src": "6620:255:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6c5d", + "id": 2436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6659:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + }, + "value": "Error: a == b not satisfied [bool]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + } + ], + "id": 2435, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6639:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6639:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2438, + "nodeType": "EmitStatement", + "src": "6634:62:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6735:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "condition": { + "id": 2441, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6762:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6749:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6753:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2439, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6715:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6715:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2446, + "nodeType": "EmitStatement", + "src": "6710:60:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6809:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "condition": { + "id": 2449, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6823:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6836:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6823:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6827:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2447, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6789:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6789:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2454, + "nodeType": "EmitStatement", + "src": "6784:60:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2455, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6858:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6858:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2457, + "nodeType": "ExpressionStatement", + "src": "6858:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6564:8:2", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "mutability": "mutable", + "name": "a", + "nameLocation": "6578:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6573:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6573:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "mutability": "mutable", + "name": "b", + "nameLocation": "6586:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6581:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6581:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6572:16:2" + }, + "returnParameters": { + "id": 2431, + "nodeType": "ParameterList", + "parameters": [], + "src": "6598:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2486, + "nodeType": "FunctionDefinition", + "src": "6887:178:2", + "body": { + "id": 2485, + "nodeType": "Block", + "src": "6949:116:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2470, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "6963:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2471, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "6968:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6963:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2484, + "nodeType": "IfStatement", + "src": "6959:100:2", + "trueBody": { + "id": 2483, + "nodeType": "Block", + "src": "6971:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2475, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2467, + "src": "7016:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2473, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6990:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6990:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2477, + "nodeType": "EmitStatement", + "src": "6985:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2479, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "7043:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2480, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "7046:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2478, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2461, + "src": "7034:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 2481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7034:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2482, + "nodeType": "ExpressionStatement", + "src": "7034:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6896:8:2", + "parameters": { + "id": 2468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2463, + "mutability": "mutable", + "name": "a", + "nameLocation": "6910:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6905:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2462, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6905:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2465, + "mutability": "mutable", + "name": "b", + "nameLocation": "6918:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6913:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6913:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2467, + "mutability": "mutable", + "name": "err", + "nameLocation": "6935:3:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6921:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2466, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6921:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6904:35:2" + }, + "returnParameters": { + "id": 2469, + "nodeType": "ParameterList", + "parameters": [], + "src": "6949:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2499, + "nodeType": "FunctionDefinition", + "src": "7071:91:2", + "body": { + "id": 2498, + "nodeType": "Block", + "src": "7130:32:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2494, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2488, + "src": "7150:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2495, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2490, + "src": "7153:1:2", + "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" + } + ], + "id": 2493, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1758, + "src": "7140:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory)" + } + }, + "id": 2496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7140:15:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2497, + "nodeType": "ExpressionStatement", + "src": "7140:15:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7080:8:2", + "parameters": { + "id": 2491, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2488, + "mutability": "mutable", + "name": "a", + "nameLocation": "7102:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7089:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2487, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7089:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2490, + "mutability": "mutable", + "name": "b", + "nameLocation": "7118:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7105:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2489, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7105:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7088:32:2" + }, + "returnParameters": { + "id": 2492, + "nodeType": "ParameterList", + "parameters": [], + "src": "7130:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2515, + "nodeType": "FunctionDefinition", + "src": "7168:115:2", + "body": { + "id": 2514, + "nodeType": "Block", + "src": "7246:37:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2509, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2501, + "src": "7266:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2510, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "7269:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2511, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "7272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2508, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1785, + "src": "7256:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory,string memory)" + } + }, + "id": 2512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7256:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2513, + "nodeType": "ExpressionStatement", + "src": "7256:20:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7177:8:2", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2501, + "mutability": "mutable", + "name": "a", + "nameLocation": "7199:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7186:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2500, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7186:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2503, + "mutability": "mutable", + "name": "b", + "nameLocation": "7215:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7202:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7202:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "mutability": "mutable", + "name": "err", + "nameLocation": "7232:3:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7218:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7218:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7185:51:2" + }, + "returnParameters": { + "id": 2507, + "nodeType": "ParameterList", + "parameters": [], + "src": "7246:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2557, + "nodeType": "FunctionDefinition", + "src": "7289:336:2", + "body": { + "id": 2556, + "nodeType": "Block", + "src": "7356:269:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2527, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7391:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2525, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7380:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7380:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7380:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2524, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7370:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7370:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2533, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7419:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7408:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7408:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7408:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2530, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7398:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7398:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7370:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2555, + "nodeType": "IfStatement", + "src": "7366:253:2", + "trueBody": { + "id": 2554, + "nodeType": "Block", + "src": "7424:195:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745b5d5d", + "id": 2538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7447:38:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + }, + "value": "Error: a == b not satisfied [uint[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + } + ], + "id": 2537, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7443:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7443:43:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2540, + "nodeType": "EmitStatement", + "src": "7438:48:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7521:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2543, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7535:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2541, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7505:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7505:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2545, + "nodeType": "EmitStatement", + "src": "7500:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7572:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2548, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7586:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2546, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7556:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7556:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2550, + "nodeType": "EmitStatement", + "src": "7551:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2551, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7602:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7602:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2553, + "nodeType": "ExpressionStatement", + "src": "7602:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7298:8:2", + "parameters": { + "id": 2522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2518, + "mutability": "mutable", + "name": "a", + "nameLocation": "7324:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7307:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2516, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7307:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2517, + "nodeType": "ArrayTypeName", + "src": "7307:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2521, + "mutability": "mutable", + "name": "b", + "nameLocation": "7344:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7327:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7327:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2520, + "nodeType": "ArrayTypeName", + "src": "7327:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7306:40:2" + }, + "returnParameters": { + "id": 2523, + "nodeType": "ParameterList", + "parameters": [], + "src": "7356:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2599, + "nodeType": "FunctionDefinition", + "src": "7631:333:2", + "body": { + "id": 2598, + "nodeType": "Block", + "src": "7696:268:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2569, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7731:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2567, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7720:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7720:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7720:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2566, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7710:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7710:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2575, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7748:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7748:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7748:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2572, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7738:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7738:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7710:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2597, + "nodeType": "IfStatement", + "src": "7706:252:2", + "trueBody": { + "id": 2596, + "nodeType": "Block", + "src": "7764:194:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745b5d5d", + "id": 2580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7787:37:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + }, + "value": "Error: a == b not satisfied [int[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + } + ], + "id": 2579, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7783:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2582, + "nodeType": "EmitStatement", + "src": "7778:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7860:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2585, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7874:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2583, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7844:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7844:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2587, + "nodeType": "EmitStatement", + "src": "7839:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7911:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2590, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7925:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2588, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7895:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7895:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2592, + "nodeType": "EmitStatement", + "src": "7890:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2593, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7941:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7941:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2595, + "nodeType": "ExpressionStatement", + "src": "7941:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7640:8:2", + "parameters": { + "id": 2564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2560, + "mutability": "mutable", + "name": "a", + "nameLocation": "7665:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7649:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2558, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7649:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2559, + "nodeType": "ArrayTypeName", + "src": "7649:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2563, + "mutability": "mutable", + "name": "b", + "nameLocation": "7684:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7668:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2561, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7668:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2562, + "nodeType": "ArrayTypeName", + "src": "7668:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7648:38:2" + }, + "returnParameters": { + "id": 2565, + "nodeType": "ParameterList", + "parameters": [], + "src": "7696:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2641, + "nodeType": "FunctionDefinition", + "src": "7970:339:2", + "body": { + "id": 2640, + "nodeType": "Block", + "src": "8037:272:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2611, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8072:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8061:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8061:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2608, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8051:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8051:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2617, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8100:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2615, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8089:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8089:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2614, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8079:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8079:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8051:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2639, + "nodeType": "IfStatement", + "src": "8047:256:2", + "trueBody": { + "id": 2638, + "nodeType": "Block", + "src": "8105:198:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735b5d5d", + "id": 2622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8128:41:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + }, + "value": "Error: a == b not satisfied [address[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + } + ], + "id": 2621, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8124:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8124:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2624, + "nodeType": "EmitStatement", + "src": "8119:51:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8205:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2627, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2625, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8189:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8189:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2629, + "nodeType": "EmitStatement", + "src": "8184:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8256:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2632, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8270:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2630, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8240:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8240:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2634, + "nodeType": "EmitStatement", + "src": "8235:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2635, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "8286:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8286:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2637, + "nodeType": "ExpressionStatement", + "src": "8286:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7979:8:2", + "parameters": { + "id": 2606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2602, + "mutability": "mutable", + "name": "a", + "nameLocation": "8005:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "7988:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2600, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7988:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2601, + "nodeType": "ArrayTypeName", + "src": "7988:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2605, + "mutability": "mutable", + "name": "b", + "nameLocation": "8025:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "8008:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8008:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2604, + "nodeType": "ArrayTypeName", + "src": "8008:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "7987:40:2" + }, + "returnParameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [], + "src": "8037:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2678, + "nodeType": "FunctionDefinition", + "src": "8315:248:2", + "body": { + "id": 2677, + "nodeType": "Block", + "src": "8401:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2655, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8436:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8425:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8425:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8425:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2652, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8415:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8415:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2661, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8464:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8453:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8453:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8453:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2658, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8443:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8443:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8415:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2676, + "nodeType": "IfStatement", + "src": "8411:146:2", + "trueBody": { + "id": 2675, + "nodeType": "Block", + "src": "8469:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2667, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2649, + "src": "8514:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2665, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8488:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8488:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2669, + "nodeType": "EmitStatement", + "src": "8483:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2671, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 2672, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8544:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2670, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2557, + "src": "8532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (uint256[] memory,uint256[] memory)" + } + }, + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8532:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2674, + "nodeType": "ExpressionStatement", + "src": "8532:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8324:8:2", + "parameters": { + "id": 2650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2644, + "mutability": "mutable", + "name": "a", + "nameLocation": "8350:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8333:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8333:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2643, + "nodeType": "ArrayTypeName", + "src": "8333:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2647, + "mutability": "mutable", + "name": "b", + "nameLocation": "8370:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8353:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8353:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2646, + "nodeType": "ArrayTypeName", + "src": "8353:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2649, + "mutability": "mutable", + "name": "err", + "nameLocation": "8387:3:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8373:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2648, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8373:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8332:59:2" + }, + "returnParameters": { + "id": 2651, + "nodeType": "ParameterList", + "parameters": [], + "src": "8401:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2715, + "nodeType": "FunctionDefinition", + "src": "8569:246:2", + "body": { + "id": 2714, + "nodeType": "Block", + "src": "8653:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2692, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8688:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2690, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8677:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8677:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8677:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2689, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8667:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8667:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2698, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8716:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8705:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8705:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8705:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8695:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8695:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8667:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2713, + "nodeType": "IfStatement", + "src": "8663:146:2", + "trueBody": { + "id": 2712, + "nodeType": "Block", + "src": "8721:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8757:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2704, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2686, + "src": "8766:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2702, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8740:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8740:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2706, + "nodeType": "EmitStatement", + "src": "8735:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2708, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8793:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + { + "id": 2709, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8796:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2707, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2599, + "src": "8784:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_int256_$dyn_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (int256[] memory,int256[] memory)" + } + }, + "id": 2710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8784:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2711, + "nodeType": "ExpressionStatement", + "src": "8784:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8578:8:2", + "parameters": { + "id": 2687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2681, + "mutability": "mutable", + "name": "a", + "nameLocation": "8603:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8587:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2679, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8587:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2680, + "nodeType": "ArrayTypeName", + "src": "8587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2684, + "mutability": "mutable", + "name": "b", + "nameLocation": "8622:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8606:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2682, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8606:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2683, + "nodeType": "ArrayTypeName", + "src": "8606:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2686, + "mutability": "mutable", + "name": "err", + "nameLocation": "8639:3:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8625:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2685, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8625:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8586:57:2" + }, + "returnParameters": { + "id": 2688, + "nodeType": "ParameterList", + "parameters": [], + "src": "8653:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2752, + "nodeType": "FunctionDefinition", + "src": "8822:248:2", + "body": { + "id": 2751, + "nodeType": "Block", + "src": "8908:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2729, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "8943:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8932:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8932:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8932:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2726, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8922:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8922:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2735, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "8971:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8960:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8960:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8960:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2732, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8950:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8950:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8922:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2750, + "nodeType": "IfStatement", + "src": "8918:146:2", + "trueBody": { + "id": 2749, + "nodeType": "Block", + "src": "8976:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9012:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2741, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2723, + "src": "9021:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2739, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8995:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8995:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2743, + "nodeType": "EmitStatement", + "src": "8990:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2745, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "9048:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "id": 2746, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "9051:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2744, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2641, + "src": "9039:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address[] memory,address[] memory)" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9039:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2748, + "nodeType": "ExpressionStatement", + "src": "9039:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8831:8:2", + "parameters": { + "id": 2724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2718, + "mutability": "mutable", + "name": "a", + "nameLocation": "8857:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8840:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8840:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2717, + "nodeType": "ArrayTypeName", + "src": "8840:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2721, + "mutability": "mutable", + "name": "b", + "nameLocation": "8877:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8860:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8860:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2720, + "nodeType": "ArrayTypeName", + "src": "8860:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2723, + "mutability": "mutable", + "name": "err", + "nameLocation": "8894:3:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8880:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2722, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8880:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8839:59:2" + }, + "returnParameters": { + "id": 2725, + "nodeType": "ParameterList", + "parameters": [], + "src": "8908:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2802, + "nodeType": "FunctionDefinition", + "src": "9076:516:2", + "body": { + "id": 2801, + "nodeType": "Block", + "src": "9190:402:2", + "statements": [ + { + "assignments": [ + 2762 + ], + "declarations": [ + { + "constant": false, + "id": 2762, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9208:5:2", + "nodeType": "VariableDeclaration", + "scope": 2801, + "src": "9200:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2768, + "initialValue": { + "arguments": [ + { + "id": 2765, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9230:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2766, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9233:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2763, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9216:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9216:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9216:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9200:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2769, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9250:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2770, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9250:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2800, + "nodeType": "IfStatement", + "src": "9246:340:2", + "trueBody": { + "id": 2799, + "nodeType": "Block", + "src": "9268:318:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9303:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2772, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9287:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9287:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2775, + "nodeType": "EmitStatement", + "src": "9282:58:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2777, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9375:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2778, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9389:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2776, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9359:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9359:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2780, + "nodeType": "EmitStatement", + "src": "9354:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9426:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2783, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2781, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9410:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9410:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2785, + "nodeType": "EmitStatement", + "src": "9405:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9477:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2788, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9491:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2786, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9461:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9461:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2790, + "nodeType": "EmitStatement", + "src": "9456:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9535:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2793, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9549:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2791, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9519:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9519:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "9514:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2796, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "9569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9569:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2798, + "nodeType": "ExpressionStatement", + "src": "9569:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9085:17:2", + "parameters": { + "id": 2759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2754, + "mutability": "mutable", + "name": "a", + "nameLocation": "9120:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9112:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2753, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9112:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2756, + "mutability": "mutable", + "name": "b", + "nameLocation": "9139:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9131:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2755, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9131:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2758, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9158:8:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9150:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2757, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9150:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9102:70:2" + }, + "returnParameters": { + "id": 2760, + "nodeType": "ParameterList", + "parameters": [], + "src": "9190:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2838, + "nodeType": "FunctionDefinition", + "src": "9598:335:2", + "body": { + "id": 2837, + "nodeType": "Block", + "src": "9739:194:2", + "statements": [ + { + "assignments": [ + 2814 + ], + "declarations": [ + { + "constant": false, + "id": 2814, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9757:5:2", + "nodeType": "VariableDeclaration", + "scope": 2837, + "src": "9749:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2813, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9749:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2820, + "initialValue": { + "arguments": [ + { + "id": 2817, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9779:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2818, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9782:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2815, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9765:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9765:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9765:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9749:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2821, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2814, + "src": "9799:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2822, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9807:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9799:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2836, + "nodeType": "IfStatement", + "src": "9795:132:2", + "trueBody": { + "id": 2835, + "nodeType": "Block", + "src": "9817:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9856:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2826, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "9865:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2824, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9836:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9836:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2828, + "nodeType": "EmitStatement", + "src": "9831:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2830, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9901:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2831, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9904:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2832, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9907:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2829, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2802, + "src": "9883:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 2833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9883:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2834, + "nodeType": "ExpressionStatement", + "src": "9883:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9607:17:2", + "parameters": { + "id": 2811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2804, + "mutability": "mutable", + "name": "a", + "nameLocation": "9642:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9634:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9634:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2806, + "mutability": "mutable", + "name": "b", + "nameLocation": "9661:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9653:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9653:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2808, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9680:8:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9672:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9672:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2810, + "mutability": "mutable", + "name": "err", + "nameLocation": "9712:3:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9698:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9698:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9624:97:2" + }, + "returnParameters": { + "id": 2812, + "nodeType": "ParameterList", + "parameters": [], + "src": "9739:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2888, + "nodeType": "FunctionDefinition", + "src": "9939:513:2", + "body": { + "id": 2887, + "nodeType": "Block", + "src": "10051:401:2", + "statements": [ + { + "assignments": [ + 2848 + ], + "declarations": [ + { + "constant": false, + "id": 2848, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10069:5:2", + "nodeType": "VariableDeclaration", + "scope": 2887, + "src": "10061:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10061:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2854, + "initialValue": { + "arguments": [ + { + "id": 2851, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10091:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2852, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10094:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2849, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10077:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10077:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10061:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2855, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10111:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2856, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10119:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10111:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2886, + "nodeType": "IfStatement", + "src": "10107:339:2", + "trueBody": { + "id": 2885, + "nodeType": "Block", + "src": "10129:317:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 2859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10164:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 2858, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10148:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10148:52:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2861, + "nodeType": "EmitStatement", + "src": "10143:57:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10235:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10249:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2862, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10219:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10219:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2866, + "nodeType": "EmitStatement", + "src": "10214:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10286:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2869, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10300:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2867, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10270:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10270:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2871, + "nodeType": "EmitStatement", + "src": "10265:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10337:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2874, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10351:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2872, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10321:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10321:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2876, + "nodeType": "EmitStatement", + "src": "10316:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10395:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2879, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10409:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2877, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10379:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10379:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2881, + "nodeType": "EmitStatement", + "src": "10374:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2882, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "10429:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10429:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2884, + "nodeType": "ExpressionStatement", + "src": "10429:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9948:17:2", + "parameters": { + "id": 2845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2840, + "mutability": "mutable", + "name": "a", + "nameLocation": "9982:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9975:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2839, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9975:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2842, + "mutability": "mutable", + "name": "b", + "nameLocation": "10000:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9993:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2841, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9993:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2844, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10019:8:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "10011:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2843, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9965:68:2" + }, + "returnParameters": { + "id": 2846, + "nodeType": "ParameterList", + "parameters": [], + "src": "10051:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2924, + "nodeType": "FunctionDefinition", + "src": "10458:333:2", + "body": { + "id": 2923, + "nodeType": "Block", + "src": "10597:194:2", + "statements": [ + { + "assignments": [ + 2900 + ], + "declarations": [ + { + "constant": false, + "id": 2900, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10615:5:2", + "nodeType": "VariableDeclaration", + "scope": 2923, + "src": "10607:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10607:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2906, + "initialValue": { + "arguments": [ + { + "id": 2903, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10637:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2904, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10640:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2901, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10623:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10623:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10623:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10607:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2907, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2900, + "src": "10657:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2908, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10665:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2922, + "nodeType": "IfStatement", + "src": "10653:132:2", + "trueBody": { + "id": 2921, + "nodeType": "Block", + "src": "10675:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10714:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2912, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2896, + "src": "10723:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2910, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10694:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10694:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2914, + "nodeType": "EmitStatement", + "src": "10689:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2916, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2917, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10762:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2918, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10765:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2915, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2888, + "src": "10741:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10741:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "10741:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "10467:17:2", + "parameters": { + "id": 2897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2890, + "mutability": "mutable", + "name": "a", + "nameLocation": "10501:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10494:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2889, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10494:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "b", + "nameLocation": "10519:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10512:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2891, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10512:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2894, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10538:8:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10530:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2893, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10530:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2896, + "mutability": "mutable", + "name": "err", + "nameLocation": "10570:3:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10556:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10556:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10484:95:2" + }, + "returnParameters": { + "id": 2898, + "nodeType": "ParameterList", + "parameters": [], + "src": "10597:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2985, + "nodeType": "FunctionDefinition", + "src": "10797:766:2", + "body": { + "id": 2984, + "nodeType": "Block", + "src": "10974:589:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2933, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "10988:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "10988:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2941, + "nodeType": "IfStatement", + "src": "10984:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 2937, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11012:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2938, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11015:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2936, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11003:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 2939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11003:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2932, + "id": 2940, + "nodeType": "Return", + "src": "10996:21:2" + } + }, + { + "assignments": [ + 2943 + ], + "declarations": [ + { + "constant": false, + "id": 2943, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11081:12:2", + "nodeType": "VariableDeclaration", + "scope": 2984, + "src": "11073:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2942, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11073:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2949, + "initialValue": { + "arguments": [ + { + "id": 2946, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11117:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2947, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11120:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2944, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11096:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11096:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11096:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11073:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2950, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11137:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2951, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11152:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11137:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2983, + "nodeType": "IfStatement", + "src": "11133:424:2", + "trueBody": { + "id": 2982, + "nodeType": "Block", + "src": "11169:388:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11212:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2953, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11188:61:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2956, + "nodeType": "EmitStatement", + "src": "11183:66:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 2958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11292:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2959, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11308:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2957, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11268:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11268:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2961, + "nodeType": "EmitStatement", + "src": "11263:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 2963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11353:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2964, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11369:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2962, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11329:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11329:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2966, + "nodeType": "EmitStatement", + "src": "11324:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 2968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11414:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 2969, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11430:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11447:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2967, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11390:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11390:60:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2972, + "nodeType": "EmitStatement", + "src": "11385:65:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11493:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 2975, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11509:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11523:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2973, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11469:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11469:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "EmitStatement", + "src": "11464:62:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2979, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "11540:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11540:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2981, + "nodeType": "ExpressionStatement", + "src": "11540:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "10806:17:2", + "parameters": { + "id": 2931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2926, + "mutability": "mutable", + "name": "a", + "nameLocation": "10841:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10833:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2925, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10833:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2928, + "mutability": "mutable", + "name": "b", + "nameLocation": "10860:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10852:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10852:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2930, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "10879:15:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10871:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2929, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10871:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10823:133:2" + }, + "returnParameters": { + "id": 2932, + "nodeType": "ParameterList", + "parameters": [], + "src": "10974:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3030, + "nodeType": "FunctionDefinition", + "src": "11569:526:2", + "body": { + "id": 3029, + "nodeType": "Block", + "src": "11773:322:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2996, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11792:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11787:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3004, + "nodeType": "IfStatement", + "src": "11783:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3000, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11811:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3001, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11814:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2999, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11802:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 3002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11802:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2995, + "id": 3003, + "nodeType": "Return", + "src": "11795:21:2" + } + }, + { + "assignments": [ + 3006 + ], + "declarations": [ + { + "constant": false, + "id": 3006, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11880:12:2", + "nodeType": "VariableDeclaration", + "scope": 3029, + "src": "11872:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3005, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3012, + "initialValue": { + "arguments": [ + { + "id": 3009, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11916:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3010, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11919:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3007, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11895:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11895:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11895:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11872:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3013, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3006, + "src": "11936:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3014, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "11951:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11936:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3028, + "nodeType": "IfStatement", + "src": "11932:157:2", + "trueBody": { + "id": 3027, + "nodeType": "Block", + "src": "11968:121:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3018, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2993, + "src": "12020:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3016, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11987:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11987:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3020, + "nodeType": "EmitStatement", + "src": "11982:42:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3022, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "12056:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3023, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "12059:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3024, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "12062:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3021, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 2985, + "src": "12038:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 3025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12038:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3026, + "nodeType": "ExpressionStatement", + "src": "12038:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "11578:17:2", + "parameters": { + "id": 2994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2987, + "mutability": "mutable", + "name": "a", + "nameLocation": "11613:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11605:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11605:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2989, + "mutability": "mutable", + "name": "b", + "nameLocation": "11632:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11624:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2988, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11624:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2991, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "11651:15:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11643:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2990, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11643:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2993, + "mutability": "mutable", + "name": "err", + "nameLocation": "11746:3:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11732:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2992, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11732:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11595:160:2" + }, + "returnParameters": { + "id": 2995, + "nodeType": "ParameterList", + "parameters": [], + "src": "11773:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3091, + "nodeType": "FunctionDefinition", + "src": "12101:702:2", + "body": { + "id": 3090, + "nodeType": "Block", + "src": "12220:583:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3039, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12234:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12234:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3047, + "nodeType": "IfStatement", + "src": "12230:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3043, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12258:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3044, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12261:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3042, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12249:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12249:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3038, + "id": 3046, + "nodeType": "Return", + "src": "12242:21:2" + } + }, + { + "assignments": [ + 3049 + ], + "declarations": [ + { + "constant": false, + "id": 3049, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "12327:12:2", + "nodeType": "VariableDeclaration", + "scope": 3090, + "src": "12319:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12319:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3055, + "initialValue": { + "arguments": [ + { + "id": 3052, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12363:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3053, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12366:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3050, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "12342:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "12342:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12342:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12319:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3056, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12383:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3057, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12398:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12383:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3089, + "nodeType": "IfStatement", + "src": "12379:418:2", + "trueBody": { + "id": 3088, + "nodeType": "Block", + "src": "12415:382:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 3060, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12457:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 3059, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12434:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 3061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12434:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3062, + "nodeType": "EmitStatement", + "src": "12429:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 3064, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12535:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 3065, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12551:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3063, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12512:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12512:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3067, + "nodeType": "EmitStatement", + "src": "12507:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 3069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12595:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 3070, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12611:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3068, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12572:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12572:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3072, + "nodeType": "EmitStatement", + "src": "12567:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 3074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12655:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 3075, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12671:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12688:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3073, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12632:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12632:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3078, + "nodeType": "EmitStatement", + "src": "12627:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 3080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12733:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 3081, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12749:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3079, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12710:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12710:56:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3084, + "nodeType": "EmitStatement", + "src": "12705:61:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 3085, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "12780:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 3086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12780:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3087, + "nodeType": "ExpressionStatement", + "src": "12780:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12110:17:2", + "parameters": { + "id": 3037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3032, + "mutability": "mutable", + "name": "a", + "nameLocation": "12144:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12137:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3031, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12137:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3034, + "mutability": "mutable", + "name": "b", + "nameLocation": "12162:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12155:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3033, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12155:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3036, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12181:15:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12173:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3035, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12173:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12127:75:2" + }, + "returnParameters": { + "id": 3038, + "nodeType": "ParameterList", + "parameters": [], + "src": "12220:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3136, + "nodeType": "FunctionDefinition", + "src": "12809:467:2", + "body": { + "id": 3135, + "nodeType": "Block", + "src": "12955:321:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3102, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12969:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12974:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12969:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3110, + "nodeType": "IfStatement", + "src": "12965:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3106, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "12993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3107, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12996:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3105, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12984:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12984:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3101, + "id": 3109, + "nodeType": "Return", + "src": "12977:21:2" + } + }, + { + "assignments": [ + 3112 + ], + "declarations": [ + { + "constant": false, + "id": 3112, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "13062:12:2", + "nodeType": "VariableDeclaration", + "scope": 3135, + "src": "13054:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13054:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3118, + "initialValue": { + "arguments": [ + { + "id": 3115, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13098:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3116, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13101:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3113, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "13077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "13077:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13077:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13054:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3119, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "13118:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3120, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13133:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13118:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3134, + "nodeType": "IfStatement", + "src": "13114:156:2", + "trueBody": { + "id": 3133, + "nodeType": "Block", + "src": "13150:120:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13192:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3124, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3099, + "src": "13201:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3122, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13169:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13169:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3126, + "nodeType": "EmitStatement", + "src": "13164:41:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3128, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13237:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3129, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13240:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3130, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13243:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3127, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 3091, + "src": "13219:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 3131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13219:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3132, + "nodeType": "ExpressionStatement", + "src": "13219:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12818:17:2", + "parameters": { + "id": 3100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3093, + "mutability": "mutable", + "name": "a", + "nameLocation": "12852:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12845:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3092, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12845:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "mutability": "mutable", + "name": "b", + "nameLocation": "12870:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12863:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3094, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12863:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3097, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12889:15:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12881:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3096, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12881:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3099, + "mutability": "mutable", + "name": "err", + "nameLocation": "12928:3:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12914:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3098, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12914:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12835:102:2" + }, + "returnParameters": { + "id": 3101, + "nodeType": "ParameterList", + "parameters": [], + "src": "12955:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 1823, + "name": "DSTest", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1786, + "src": "196:6:2" + }, + "id": 1824, + "nodeType": "InheritanceSpecifier", + "src": "196:6:2" + }, + { + "baseName": { + "id": 1825, + "name": "Script", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1818, + "src": "204:6:2" + }, + "id": 1826, + "nodeType": "InheritanceSpecifier", + "src": "204:6:2" + } + ], + "canonicalName": "Test", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3137, + 1818, + 1786 + ], + "name": "Test", + "nameLocation": "188:4:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3207, + "nodeType": "ContractDefinition", + "src": "13478:984:2", + "nodes": [ + { + "id": 3144, + "nodeType": "VariableDeclaration", + "src": "13501:86:2", + "constant": true, + "functionSelector": "10332977", + "mutability": "constant", + "name": "assertionError", + "nameLocation": "13523:14:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3138, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13501:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13564:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783031", + "id": 3142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13582:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "expression": { + "id": 3139, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13540:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13540:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3151, + "nodeType": "VariableDeclaration", + "src": "13593:87:2", + "constant": true, + "functionSelector": "8995290f", + "mutability": "constant", + "name": "arithmeticError", + "nameLocation": "13615:15:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3145, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13593:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783131", + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13675:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "0x11" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + } + ], + "expression": { + "id": 3146, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13633:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13633:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13633:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3158, + "nodeType": "VariableDeclaration", + "src": "13686:85:2", + "constant": true, + "functionSelector": "fa784a44", + "mutability": "constant", + "name": "divisionError", + "nameLocation": "13708:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3152, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13686:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13748:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783132", + "id": 3156, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13766:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "0x12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "expression": { + "id": 3153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13724:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13724:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13724:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3165, + "nodeType": "VariableDeclaration", + "src": "13777:91:2", + "constant": true, + "functionSelector": "1de45560", + "mutability": "constant", + "name": "enumConversionError", + "nameLocation": "13799:19:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3159, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13845:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783231", + "id": 3163, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13863:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + }, + "value": "0x21" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + } + ], + "expression": { + "id": 3160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13821:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13821:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3164, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13821:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3172, + "nodeType": "VariableDeclaration", + "src": "13874:90:2", + "constant": true, + "functionSelector": "d160e4de", + "mutability": "constant", + "name": "encodeStorageError", + "nameLocation": "13896:18:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3166, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13874:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13941:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783232", + "id": 3170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + }, + "value": "0x22" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + } + ], + "expression": { + "id": 3167, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13917:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13917:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13917:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3179, + "nodeType": "VariableDeclaration", + "src": "13970:80:2", + "constant": true, + "functionSelector": "b22dc54d", + "mutability": "constant", + "name": "popError", + "nameLocation": "13992:8:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3173, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13970:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14027:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783331", + "id": 3177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14045:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + }, + "value": "0x31" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + } + ], + "expression": { + "id": 3174, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14003:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14003:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14003:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3186, + "nodeType": "VariableDeclaration", + "src": "14056:85:2", + "constant": true, + "functionSelector": "05ee8612", + "mutability": "constant", + "name": "indexOOBError", + "nameLocation": "14078:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14056:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14118:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783332", + "id": 3184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14136:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "0x32" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + } + ], + "expression": { + "id": 3181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14094:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14094:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14094:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3193, + "nodeType": "VariableDeclaration", + "src": "14147:88:2", + "constant": true, + "functionSelector": "986c5f68", + "mutability": "constant", + "name": "memOverflowError", + "nameLocation": "14169:16:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3187, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14147:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14212:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783431", + "id": 3191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14230:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + }, + "value": "0x41" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + } + ], + "expression": { + "id": 3188, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14188:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14188:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3200, + "nodeType": "VariableDeclaration", + "src": "14241:84:2", + "constant": true, + "functionSelector": "b67689da", + "mutability": "constant", + "name": "zeroVarError", + "nameLocation": "14263:12:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3194, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14241:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14302:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783531", + "id": 3198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14320:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + }, + "value": "0x51" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + } + ], + "expression": { + "id": 3195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14278:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14278:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14278:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3206, + "nodeType": "VariableDeclaration", + "src": "14404:47:2", + "constant": true, + "functionSelector": "ac3d92c6", + "mutability": "constant", + "name": "lowLevelError", + "nameLocation": "14426:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3201, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14404:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "", + "id": 3204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14448:2:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14442:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3202, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14442:5:2", + "typeDescriptions": {} + } + }, + "id": 3205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14442:9:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdError", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3207 + ], + "name": "stdError", + "nameLocation": "13486:8:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3235, + "nodeType": "StructDefinition", + "src": "14663:275:2", + "canonicalName": "StdStorage", + "members": [ + { + "constant": false, + "id": 3215, + "mutability": "mutable", + "name": "slots", + "nameLocation": "14755:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14687:73:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "typeName": { + "id": 3214, + "keyType": { + "id": 3208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14696:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14687:67:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "valueType": { + "id": 3213, + "keyType": { + "id": 3209, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14715:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14707:46:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + }, + "valueType": { + "id": 3212, + "keyType": { + "id": 3210, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14733:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14725:27:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 3211, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14744:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3223, + "mutability": "mutable", + "name": "finds", + "nameLocation": "14832:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14766:71:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "typeName": { + "id": 3222, + "keyType": { + "id": 3216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14775:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14766:65:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "valueType": { + "id": 3221, + "keyType": { + "id": 3217, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14794:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14786:44:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 3220, + "keyType": { + "id": 3218, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14813:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14805:24:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 3219, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14824:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3226, + "mutability": "mutable", + "name": "_keys", + "nameLocation": "14854:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14844:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3224, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14844:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3225, + "nodeType": "ArrayTypeName", + "src": "14844:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3228, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "14872:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14865:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3227, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14865:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3230, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "14890:6:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14882:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14882:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3232, + "mutability": "mutable", + "name": "_target", + "nameLocation": "14910:7:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14902:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14902:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3234, + "mutability": "mutable", + "name": "_set", + "nameLocation": "14931:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14923:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3233, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "StdStorage", + "nameLocation": "14670:10:2", + "scope": 4485, + "visibility": "public" + }, + { + "id": 4337, + "nodeType": "ContractDefinition", + "src": "14940:8872:2", + "nodes": [ + { + "id": 3245, + "nodeType": "EventDefinition", + "src": "14965:71:2", + "anonymous": false, + "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", + "name": "SlotFound", + "nameLocation": "14971:9:2", + "parameters": { + "id": 3244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3237, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "14989:3:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14981:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14981:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3239, + "indexed": false, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "15001:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14994:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3238, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14994:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3241, + "indexed": false, + "mutability": "mutable", + "name": "keysHash", + "nameLocation": "15015:8:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15007:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3240, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3243, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15030:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15025:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15025:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14980:55:2" + } + }, + { + "id": 3251, + "nodeType": "EventDefinition", + "src": "15041:51:2", + "anonymous": false, + "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", + "name": "WARNING_UninitedSlot", + "nameLocation": "15047:20:2", + "parameters": { + "id": 3250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3247, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "15076:3:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15068:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15068:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3249, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15086:4:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15081:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3248, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15067:24:2" + } + }, + { + "id": 3254, + "nodeType": "VariableDeclaration", + "src": "15098:117:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "15123:11:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15098:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 3253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15137:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "private" + }, + { + "id": 3257, + "nodeType": "VariableDeclaration", + "src": "15221:114:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MAX", + "nameLocation": "15245:10:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3255, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15221:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393637", + "id": 3256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15258:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819967_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9967" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819967" + }, + "visibility": "private" + }, + { + "id": 3274, + "nodeType": "VariableDeclaration", + "src": "15342:94:2", + "constant": true, + "mutability": "constant", + "name": "vm_std_store", + "nameLocation": "15362:12:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + }, + "typeName": { + "id": 3259, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3258, + "name": "Vm", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4964, + "src": "15342:2:2" + }, + "referencedDeclaration": 4964, + "src": "15342:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 3268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15414:17:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 3267, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15404:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15404:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15396:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15396:7:2", + "typeDescriptions": {} + } + }, + "id": 3270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15396:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15388:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3263, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "15388:7:2", + "typeDescriptions": {} + } + }, + "id": 3271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15388:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15380:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3261, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15380:7:2", + "typeDescriptions": {} + } + }, + "id": 3272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15380:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3260, + "name": "Vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4964, + "src": "15377:2:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Vm_$4964_$", + "typeString": "type(contract Vm)" + } + }, + "id": 3273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15377:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "visibility": "private" + }, + { + "id": 3292, + "nodeType": "FunctionDefinition", + "src": "15443:165:2", + "body": { + "id": 3291, + "nodeType": "Block", + "src": "15552:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3286, + "name": "sigStr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3276, + "src": "15592:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15586:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15586:5:2", + "typeDescriptions": {} + } + }, + "id": 3287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15586:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3283, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15576:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15576:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15569:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3281, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15569:6:2", + "typeDescriptions": {} + } + }, + "id": 3289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15569:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "functionReturnParameters": 3280, + "id": 3290, + "nodeType": "Return", + "src": "15562:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sigs", + "nameLocation": "15452:4:2", + "parameters": { + "id": 3277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3276, + "mutability": "mutable", + "name": "sigStr", + "nameLocation": "15480:6:2", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15466:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3275, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15466:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15456:36:2" + }, + "returnParameters": { + "id": 3280, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3279, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15540:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3278, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "15539:8:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3737, + "nodeType": "FunctionDefinition", + "src": "16122:3214:2", + "body": { + "id": 3736, + "nodeType": "Block", + "src": "16222:3114:2", + "statements": [ + { + "assignments": [ + 3302 + ], + "declarations": [ + { + "constant": false, + "id": 3302, + "mutability": "mutable", + "name": "who", + "nameLocation": "16240:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16232:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3301, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16232:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3305, + "initialValue": { + "expression": { + "id": 3303, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16246:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3304, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "16246:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16232:26:2" + }, + { + "assignments": [ + 3307 + ], + "declarations": [ + { + "constant": false, + "id": 3307, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "16275:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16268:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3306, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16268:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3310, + "initialValue": { + "expression": { + "id": 3308, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16282:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3309, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "16282:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16268:23:2" + }, + { + "assignments": [ + 3312 + ], + "declarations": [ + { + "constant": false, + "id": 3312, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "16309:11:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16301:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3311, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3315, + "initialValue": { + "expression": { + "id": 3313, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16323:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3314, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "16323:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16301:33:2" + }, + { + "assignments": [ + 3320 + ], + "declarations": [ + { + "constant": false, + "id": 3320, + "mutability": "mutable", + "name": "ins", + "nameLocation": "16361:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16344:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16344:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3319, + "nodeType": "ArrayTypeName", + "src": "16344:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3323, + "initialValue": { + "expression": { + "id": 3321, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16367:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "16367:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16344:33:2" + }, + { + "condition": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3324, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3325, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "16428:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3327, + "indexExpression": { + "id": 3326, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16439:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3329, + "indexExpression": { + "id": 3328, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16444:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3337, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3333, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16477:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3334, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16482:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16460:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16460:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16460:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3330, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16450:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16450:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3354, + "nodeType": "IfStatement", + "src": "16424:174:2", + "trueBody": { + "id": 3353, + "nodeType": "Block", + "src": "16498:100:2", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3338, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16519:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3339, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "16519:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3341, + "indexExpression": { + "id": 3340, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16530:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3343, + "indexExpression": { + "id": 3342, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16535:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3351, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3347, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16568:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3348, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16573:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3345, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16551:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16551:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16551:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3344, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16541:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16541:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3352, + "nodeType": "Return", + "src": "16512:75:2" + } + ] + } + }, + { + "assignments": [ + 3356 + ], + "declarations": [ + { + "constant": false, + "id": 3356, + "mutability": "mutable", + "name": "cald", + "nameLocation": "16620:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16607:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3355, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16607:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3364, + "initialValue": { + "arguments": [ + { + "id": 3359, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16644:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3361, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16658:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3360, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "16650:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16650:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3357, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16627:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16627:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16607:56:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3365, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16673:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "record", + "nodeType": "MemberAccess", + "referencedDeclaration": 4756, + "src": "16673:19:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 3368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16673:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3369, + "nodeType": "ExpressionStatement", + "src": "16673:21:2" + }, + { + "assignments": [ + 3371 + ], + "declarations": [ + { + "constant": false, + "id": 3371, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "16712:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16704:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3370, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16704:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3372, + "nodeType": "VariableDeclarationStatement", + "src": "16704:12:2" + }, + { + "id": 3389, + "nodeType": "Block", + "src": "16726:126:2", + "statements": [ + { + "assignments": [ + null, + 3374 + ], + "declarations": [ + null, + { + "constant": false, + "id": 3374, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "16756:4:2", + "nodeType": "VariableDeclaration", + "scope": 3389, + "src": "16743:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3373, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16743:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3379, + "initialValue": { + "arguments": [ + { + "id": 3377, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "16779:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3375, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16764:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "16764:14:2", + "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": 3378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16764:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16740:44:2" + }, + { + "expression": { + "id": 3387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3380, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "16798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3382, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3374, + "src": "16820:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16826:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3384, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16829:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16826:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3381, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "16805:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16805:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "16798:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3388, + "nodeType": "ExpressionStatement", + "src": "16798:43:2" + } + ] + }, + { + "assignments": [ + 3394, + null + ], + "declarations": [ + { + "constant": false, + "id": 3394, + "mutability": "mutable", + "name": "reads", + "nameLocation": "16880:5:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16863:22:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3392, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3393, + "nodeType": "ArrayTypeName", + "src": "16863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + null + ], + "id": 3402, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 3399, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16921:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16913:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16913:7:2", + "typeDescriptions": {} + } + }, + "id": 3400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16913:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 3395, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16891:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "accesses", + "nodeType": "MemberAccess", + "referencedDeclaration": 4767, + "src": "16891:21:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (address) external returns (bytes32[] memory,bytes32[] memory)" + } + }, + "id": 3401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16891:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32[] memory,bytes32[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16862:64:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3403, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "16940:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16940:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 3405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16956:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "16940:17:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3505, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17649:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17649:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "31", + "id": 3507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17664:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17649:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3684, + "nodeType": "Block", + "src": "18887:107:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18909:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a204e6f2073746f726167652075736520646574656374656420666f72207461726765742e", + "id": 3681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18916:66:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + }, + "value": "stdStorage find(StdStorage): No storage use detected for target." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + } + ], + "id": 3679, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18901:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18901:82:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3683, + "nodeType": "ExpressionStatement", + "src": "18901:82:2" + } + ] + }, + "id": 3685, + "nodeType": "IfStatement", + "src": "17645:1349:2", + "trueBody": { + "id": 3678, + "nodeType": "Block", + "src": "17667:1214:2", + "statements": [ + { + "body": { + "id": 3676, + "nodeType": "Block", + "src": "17724:1147:2", + "statements": [ + { + "assignments": [ + 3521 + ], + "declarations": [ + { + "constant": false, + "id": 3521, + "mutability": "mutable", + "name": "prev", + "nameLocation": "17750:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "17742:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3520, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17742:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3529, + "initialValue": { + "arguments": [ + { + "id": 3524, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17775:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3525, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17780:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3527, + "indexExpression": { + "id": 3526, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17786:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17780:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3522, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17757:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "17757:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17757:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17742:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3530, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "17811:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17827:1:2", + "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": 3532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17819:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3531, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17819:7:2", + "typeDescriptions": {} + } + }, + "id": 3534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17819:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17811:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3547, + "nodeType": "IfStatement", + "src": "17807:114:2", + "trueBody": { + "id": 3546, + "nodeType": "Block", + "src": "17831:90:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3537, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17879:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3540, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17892:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3542, + "indexExpression": { + "id": 3541, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17898:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17892:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17884:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3538, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17884:7:2", + "typeDescriptions": {} + } + }, + "id": 3543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17884:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3536, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17858:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17858:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3545, + "nodeType": "EmitStatement", + "src": "17853:49:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3551, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17982:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3552, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17987:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3554, + "indexExpression": { + "id": 3553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17987:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "1337", + "id": 3557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18005:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17997:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3555, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17997:7:2", + "typeDescriptions": {} + } + }, + "id": 3558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17997:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3548, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17963:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "17963:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17963:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3560, + "nodeType": "ExpressionStatement", + "src": "17963:53:2" + }, + { + "assignments": [ + 3562 + ], + "declarations": [ + { + "constant": false, + "id": 3562, + "mutability": "mutable", + "name": "success", + "nameLocation": "18039:7:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18034:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3561, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18034:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 3563, + "nodeType": "VariableDeclarationStatement", + "src": "18034:12:2" + }, + { + "assignments": [ + 3565 + ], + "declarations": [ + { + "constant": false, + "id": 3565, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "18077:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18064:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3564, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18064:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3566, + "nodeType": "VariableDeclarationStatement", + "src": "18064:17:2" + }, + { + "id": 3585, + "nodeType": "Block", + "src": "18099:144:2", + "statements": [ + { + "expression": { + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 3567, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18122:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 3568, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18131:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 3569, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "18121:15:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3572, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "18154:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3570, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18139:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "18139:14:2", + "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": 3573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18139:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "src": "18121:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3575, + "nodeType": "ExpressionStatement", + "src": "18121:38:2" + }, + { + "expression": { + "id": 3583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3576, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18181:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3578, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18203:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18209:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3580, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18212:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18209:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3577, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "18188:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18188:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18181:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3584, + "nodeType": "ExpressionStatement", + "src": "18181:43:2" + } + ] + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3586, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18265:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3587, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18276:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "1337", + "id": 3590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18292:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18284:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3588, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "18284:7:2", + "typeDescriptions": {} + } + }, + "id": 3591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18284:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18276:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18265:37:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3665, + "nodeType": "IfStatement", + "src": "18261:539:2", + "trueBody": { + "id": 3664, + "nodeType": "Block", + "src": "18304:496:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3595, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18410:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3596, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18415:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3600, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18448:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3601, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18453:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3598, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18431:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18431:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18431:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3597, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18421:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18421:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3606, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18476:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3608, + "indexExpression": { + "id": 3607, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18482:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18476:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18468:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18468:7:2", + "typeDescriptions": {} + } + }, + "id": 3609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18468:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3594, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "18400:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18400:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3611, + "nodeType": "EmitStatement", + "src": "18395:91:2" + }, + { + "expression": { + "id": 3633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3612, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18508:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3623, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "18508:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3624, + "indexExpression": { + "id": 3614, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18519:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3625, + "indexExpression": { + "id": 3615, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18524:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3626, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3619, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18557:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3620, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18562:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3617, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18540:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18540:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3616, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18530:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18530:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18508:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3629, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18587:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3631, + "indexExpression": { + "id": 3630, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18593:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3628, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18579:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3627, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18579:7:2", + "typeDescriptions": {} + } + }, + "id": 3632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18579:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18508:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3634, + "nodeType": "ExpressionStatement", + "src": "18508:88:2" + }, + { + "expression": { + "id": 3651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3635, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18618:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3646, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "18618:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3647, + "indexExpression": { + "id": 3637, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18629:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3648, + "indexExpression": { + "id": 3638, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18634:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3649, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3642, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18667:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3643, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18672:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3640, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18650:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18650:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18650:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3639, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18640:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18640:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18618:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18689:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "18618:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3652, + "nodeType": "ExpressionStatement", + "src": "18618:75:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3656, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3657, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18739:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3659, + "indexExpression": { + "id": 3658, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18745:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18739:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3660, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3653, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18715:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18715:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18715:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3662, + "nodeType": "ExpressionStatement", + "src": "18715:39:2" + }, + { + "id": 3663, + "nodeType": "Break", + "src": "18776:5:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3669, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18836:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3670, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18841:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3672, + "indexExpression": { + "id": 3671, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18847:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18841:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3673, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18851:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3666, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18817:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18817:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18817:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3675, + "nodeType": "ExpressionStatement", + "src": "18817:39:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3513, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17701:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3514, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17705:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17705:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17701:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3677, + "initializationExpression": { + "assignments": [ + 3510 + ], + "declarations": [ + { + "constant": false, + "id": 3510, + "mutability": "mutable", + "name": "i", + "nameLocation": "17694:1:2", + "nodeType": "VariableDeclaration", + "scope": 3677, + "src": "17686:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3509, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3512, + "initialValue": { + "hexValue": "30", + "id": 3511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17698:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "17686:13:2" + }, + "loopExpression": { + "expression": { + "id": 3518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "17719:3:2", + "subExpression": { + "id": 3517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17719:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3519, + "nodeType": "ExpressionStatement", + "src": "17719:3:2" + }, + "nodeType": "ForStatement", + "src": "17681:1190:2" + } + ] + } + }, + "id": 3686, + "nodeType": "IfStatement", + "src": "16936:2058:2", + "trueBody": { + "id": 3504, + "nodeType": "Block", + "src": "16959:680:2", + "statements": [ + { + "assignments": [ + 3408 + ], + "declarations": [ + { + "constant": false, + "id": 3408, + "mutability": "mutable", + "name": "curr", + "nameLocation": "16981:4:2", + "nodeType": "VariableDeclaration", + "scope": 3504, + "src": "16973:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3407, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16973:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3416, + "initialValue": { + "arguments": [ + { + "id": 3411, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17006:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3412, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17011:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3414, + "indexExpression": { + "hexValue": "30", + "id": 3413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17017:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17011:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3409, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16988:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "16988:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16988:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16973:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3417, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17038:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17054:1:2", + "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": 3419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17046:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3418, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17046:7:2", + "typeDescriptions": {} + } + }, + "id": 3421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17046:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17038:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3434, + "nodeType": "IfStatement", + "src": "17034:106:2", + "trueBody": { + "id": 3433, + "nodeType": "Block", + "src": "17058:82:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3424, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17102:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3427, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17115:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3429, + "indexExpression": { + "hexValue": "30", + "id": 3428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17121:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17115:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17107:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17107:7:2", + "typeDescriptions": {} + } + }, + "id": 3430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17107:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3423, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17081:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17081:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3432, + "nodeType": "EmitStatement", + "src": "17076:49:2" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3435, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "17157:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 3436, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17165:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17157:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3444, + "nodeType": "IfStatement", + "src": "17153:180:2", + "trueBody": { + "id": 3443, + "nodeType": "Block", + "src": "17171:162:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17197:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 3440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17204:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 3438, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17189:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3442, + "nodeType": "ExpressionStatement", + "src": "17189:129:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "id": 3446, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17361:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3447, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17366:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3451, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17399:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3452, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17404:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3449, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17382:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17382:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17382:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3448, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17372:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17372:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3457, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17427:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3459, + "indexExpression": { + "hexValue": "30", + "id": 3458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17433:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17427:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3456, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3455, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17419:7:2", + "typeDescriptions": {} + } + }, + "id": 3460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17419:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3445, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "17351:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17351:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3462, + "nodeType": "EmitStatement", + "src": "17346:91:2" + }, + { + "expression": { + "id": 3484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3463, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17451:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3474, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "17451:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3475, + "indexExpression": { + "id": 3465, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17462:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3476, + "indexExpression": { + "id": 3466, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17467:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3477, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3470, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17500:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3471, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17505:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3468, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17483:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17483:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17483:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3467, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17473:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17473:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17451:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3480, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17530:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3482, + "indexExpression": { + "hexValue": "30", + "id": 3481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17536:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17530:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17522:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3478, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17522:7:2", + "typeDescriptions": {} + } + }, + "id": 3483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17522:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17451:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3485, + "nodeType": "ExpressionStatement", + "src": "17451:88:2" + }, + { + "expression": { + "id": 3502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3486, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17553:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3497, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "17553:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3498, + "indexExpression": { + "id": 3488, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17564:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3499, + "indexExpression": { + "id": 3489, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3500, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3493, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17602:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3494, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17607:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17585:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17585:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3490, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17575:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17575:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17553:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17624:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "17553:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3503, + "nodeType": "ExpressionStatement", + "src": "17553:75:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3688, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19012:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3689, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "19012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3691, + "indexExpression": { + "id": 3690, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19023:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3693, + "indexExpression": { + "id": 3692, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19028:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3701, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3697, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3698, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19066:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3695, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19044:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19044:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19044:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3694, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19034:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19034:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a20536c6f74287329206e6f7420666f756e642e", + "id": 3702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19082:49:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + }, + "value": "stdStorage find(StdStorage): Slot(s) not found." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + } + ], + "id": 3687, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "19004:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19004:128:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3704, + "nodeType": "ExpressionStatement", + "src": "19004:128:2" + }, + { + "expression": { + "id": 3707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19143:19:2", + "subExpression": { + "expression": { + "id": 3705, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3706, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19150:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3708, + "nodeType": "ExpressionStatement", + "src": "19143:19:2" + }, + { + "expression": { + "id": 3711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19172:16:2", + "subExpression": { + "expression": { + "id": 3709, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19179:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3710, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19179:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3712, + "nodeType": "ExpressionStatement", + "src": "19172:16:2" + }, + { + "expression": { + "id": 3715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19198:17:2", + "subExpression": { + "expression": { + "id": 3713, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19205:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19205:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3716, + "nodeType": "ExpressionStatement", + "src": "19198:17:2" + }, + { + "expression": { + "id": 3719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19225:18:2", + "subExpression": { + "expression": { + "id": 3717, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19232:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3718, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "19232:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3720, + "nodeType": "ExpressionStatement", + "src": "19225:18:2" + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3721, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19261:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3722, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "19261:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3724, + "indexExpression": { + "id": 3723, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3726, + "indexExpression": { + "id": 3725, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19277:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3734, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3730, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19310:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3731, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19315:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19293:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19293:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19293:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3727, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19283:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19283:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3735, + "nodeType": "Return", + "src": "19254:75:2" + } + ] + }, + "documentation": { + "id": 3293, + "nodeType": "StructuredDocumentation", + "src": "15614:129:2", + "text": "@notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "find", + "nameLocation": "16131:4:2", + "parameters": { + "id": 3297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3296, + "mutability": "mutable", + "name": "self", + "nameLocation": "16164:4:2", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16145:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3295, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3294, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "16145:10:2" + }, + "referencedDeclaration": 3235, + "src": "16145:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "16135:39:2" + }, + "returnParameters": { + "id": 3300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16209:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3298, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16208:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3757, + "nodeType": "FunctionDefinition", + "src": "19342:156:2", + "body": { + "id": 3756, + "nodeType": "Block", + "src": "19438:60:2", + "statements": [ + { + "expression": { + "id": 3752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3748, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19448:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3750, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19448:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3751, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "19463:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19448:22:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3753, + "nodeType": "ExpressionStatement", + "src": "19448:22:2" + }, + { + "expression": { + "id": 3754, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19487:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3747, + "id": 3755, + "nodeType": "Return", + "src": "19480:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "target", + "nameLocation": "19351:6:2", + "parameters": { + "id": 3743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3740, + "mutability": "mutable", + "name": "self", + "nameLocation": "19377:4:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19358:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3739, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3738, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19358:10:2" + }, + "referencedDeclaration": 3235, + "src": "19358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3742, + "mutability": "mutable", + "name": "_target", + "nameLocation": "19391:7:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19383:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19383:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19357:42:2" + }, + "returnParameters": { + "id": 3747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3746, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19418:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3745, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3744, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19418:10:2" + }, + "referencedDeclaration": 3235, + "src": "19418:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19417:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3777, + "nodeType": "FunctionDefinition", + "src": "19504:143:2", + "body": { + "id": 3776, + "nodeType": "Block", + "src": "19593:54:2", + "statements": [ + { + "expression": { + "id": 3772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3768, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19603:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19603:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3771, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3762, + "src": "19615:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19603:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3773, + "nodeType": "ExpressionStatement", + "src": "19603:16:2" + }, + { + "expression": { + "id": 3774, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19636:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3767, + "id": 3775, + "nodeType": "Return", + "src": "19629:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19513:3:2", + "parameters": { + "id": 3763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3760, + "mutability": "mutable", + "name": "self", + "nameLocation": "19536:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19517:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3759, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3758, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19517:10:2" + }, + "referencedDeclaration": 3235, + "src": "19517:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3762, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19549:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19542:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3761, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "19542:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "19516:38:2" + }, + "returnParameters": { + "id": 3767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3766, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19573:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3765, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3764, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19573:10:2" + }, + "referencedDeclaration": 3235, + "src": "19573:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19572:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3799, + "nodeType": "FunctionDefinition", + "src": "19653:156:2", + "body": { + "id": 3798, + "nodeType": "Block", + "src": "19749:60:2", + "statements": [ + { + "expression": { + "id": 3794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3788, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19759:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3790, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19759:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3792, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3782, + "src": "19776:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3791, + "name": "sigs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3292, + "src": "19771:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (string memory) pure returns (bytes4)" + } + }, + "id": 3793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19771:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19759:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3795, + "nodeType": "ExpressionStatement", + "src": "19759:22:2" + }, + { + "expression": { + "id": 3796, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3787, + "id": 3797, + "nodeType": "Return", + "src": "19791:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19662:3:2", + "parameters": { + "id": 3783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3780, + "mutability": "mutable", + "name": "self", + "nameLocation": "19685:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19666:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3779, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3778, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19666:10:2" + }, + "referencedDeclaration": 3235, + "src": "19666:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3782, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19705:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19691:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19691:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19665:45:2" + }, + "returnParameters": { + "id": 3787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3786, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19729:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3785, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3784, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19729:10:2" + }, + "referencedDeclaration": 3235, + "src": "19729:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19728:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3830, + "nodeType": "FunctionDefinition", + "src": "19815:179:2", + "body": { + "id": 3829, + "nodeType": "Block", + "src": "19909:85:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3821, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3804, + "src": "19959:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19951:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3819, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "19951:7:2", + "typeDescriptions": {} + } + }, + "id": 3822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19951:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19943:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19943:7:2", + "typeDescriptions": {} + } + }, + "id": 3823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19943:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19935:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3815, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19935:7:2", + "typeDescriptions": {} + } + }, + "id": 3824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19935:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3810, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19919:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3813, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19919:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "19919:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19919:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3826, + "nodeType": "ExpressionStatement", + "src": "19919:47:2" + }, + { + "expression": { + "id": 3827, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19983:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3809, + "id": 3828, + "nodeType": "Return", + "src": "19976:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "19824:8:2", + "parameters": { + "id": 3805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3802, + "mutability": "mutable", + "name": "self", + "nameLocation": "19852:4:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19833:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3801, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3800, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19833:10:2" + }, + "referencedDeclaration": 3235, + "src": "19833:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3804, + "mutability": "mutable", + "name": "who", + "nameLocation": "19866:3:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19858:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19858:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19832:38:2" + }, + "returnParameters": { + "id": 3809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19889:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3807, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3806, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19889:10:2" + }, + "referencedDeclaration": 3235, + "src": "19889:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19888:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3855, + "nodeType": "FunctionDefinition", + "src": "20000:161:2", + "body": { + "id": 3854, + "nodeType": "Block", + "src": "20094:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 3848, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "20128:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20120:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3846, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20120:7:2", + "typeDescriptions": {} + } + }, + "id": 3849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20120:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3841, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20104:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3844, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20104:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20104:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20104:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3851, + "nodeType": "ExpressionStatement", + "src": "20104:29:2" + }, + { + "expression": { + "id": 3852, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3840, + "id": 3853, + "nodeType": "Return", + "src": "20143:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20009:8:2", + "parameters": { + "id": 3836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3833, + "mutability": "mutable", + "name": "self", + "nameLocation": "20037:4:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20018:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3832, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3831, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20018:10:2" + }, + "referencedDeclaration": 3235, + "src": "20018:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3835, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20051:3:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20043:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3834, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20043:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20017:38:2" + }, + "returnParameters": { + "id": 3840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3839, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20074:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3838, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3837, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20074:10:2" + }, + "referencedDeclaration": 3235, + "src": "20074:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20073:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3877, + "nodeType": "FunctionDefinition", + "src": "20166:152:2", + "body": { + "id": 3876, + "nodeType": "Block", + "src": "20260:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3871, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3860, + "src": "20286:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3866, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20270:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3869, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20270:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20270:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20270:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3873, + "nodeType": "ExpressionStatement", + "src": "20270:20:2" + }, + { + "expression": { + "id": 3874, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20307:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3865, + "id": 3875, + "nodeType": "Return", + "src": "20300:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20175:8:2", + "parameters": { + "id": 3861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3858, + "mutability": "mutable", + "name": "self", + "nameLocation": "20203:4:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20184:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3857, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3856, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20184:10:2" + }, + "referencedDeclaration": 3235, + "src": "20184:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3860, + "mutability": "mutable", + "name": "key", + "nameLocation": "20217:3:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20209:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3859, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "20183:38:2" + }, + "returnParameters": { + "id": 3865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20240:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3863, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3862, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20240:10:2" + }, + "referencedDeclaration": 3235, + "src": "20240:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20239:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3897, + "nodeType": "FunctionDefinition", + "src": "20324:152:2", + "body": { + "id": 3896, + "nodeType": "Block", + "src": "20418:58:2", + "statements": [ + { + "expression": { + "id": 3892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3888, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3890, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "20428:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3891, + "name": "_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3882, + "src": "20442:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20428:20:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3893, + "nodeType": "ExpressionStatement", + "src": "20428:20:2" + }, + { + "expression": { + "id": 3894, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20465:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3887, + "id": 3895, + "nodeType": "Return", + "src": "20458:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "depth", + "nameLocation": "20333:5:2", + "parameters": { + "id": 3883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3880, + "mutability": "mutable", + "name": "self", + "nameLocation": "20358:4:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20339:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3879, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3878, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20339:10:2" + }, + "referencedDeclaration": 3235, + "src": "20339:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3882, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "20372:6:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20364:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3881, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20364:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20338:41:2" + }, + "returnParameters": { + "id": 3887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20398:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3885, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3884, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20398:10:2" + }, + "referencedDeclaration": 3235, + "src": "20398:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20397:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3920, + "nodeType": "FunctionDefinition", + "src": "20482:138:2", + "body": { + "id": 3919, + "nodeType": "Block", + "src": "20552:68:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3906, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3900, + "src": "20576:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3913, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3902, + "src": "20606:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20598:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3911, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "20598:7:2", + "typeDescriptions": {} + } + }, + "id": 3914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20598:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20590:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3909, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20590:7:2", + "typeDescriptions": {} + } + }, + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20590:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20582:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3907, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20582:7:2", + "typeDescriptions": {} + } + }, + "id": 3916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20582:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3905, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20562:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20562:51:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3918, + "nodeType": "ExpressionStatement", + "src": "20562:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20491:13:2", + "parameters": { + "id": 3903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3900, + "mutability": "mutable", + "name": "self", + "nameLocation": "20524:4:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20505:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3899, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3898, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20505:10:2" + }, + "referencedDeclaration": 3235, + "src": "20505:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3902, + "mutability": "mutable", + "name": "who", + "nameLocation": "20538:3:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20530:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20530:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20504:38:2" + }, + "returnParameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [], + "src": "20552:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3937, + "nodeType": "FunctionDefinition", + "src": "20626:120:2", + "body": { + "id": 3936, + "nodeType": "Block", + "src": "20696:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3929, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3923, + "src": "20720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "id": 3932, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3925, + "src": "20734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20726:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20726:7:2", + "typeDescriptions": {} + } + }, + "id": 3933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20726:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3928, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20706:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20706:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3935, + "nodeType": "ExpressionStatement", + "src": "20706:33:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20635:13:2", + "parameters": { + "id": 3926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3923, + "mutability": "mutable", + "name": "self", + "nameLocation": "20668:4:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20649:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3922, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3921, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20649:10:2" + }, + "referencedDeclaration": 3235, + "src": "20649:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3925, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20682:3:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20674:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20674:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20648:38:2" + }, + "returnParameters": { + "id": 3927, + "nodeType": "ParameterList", + "parameters": [], + "src": "20696:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3955, + "nodeType": "FunctionDefinition", + "src": "20752:222:2", + "body": { + "id": 3954, + "nodeType": "Block", + "src": "20821:153:2", + "statements": [ + { + "assignments": [ + 3946 + ], + "declarations": [ + { + "constant": false, + "id": 3946, + "mutability": "mutable", + "name": "t", + "nameLocation": "20839:1:2", + "nodeType": "VariableDeclaration", + "scope": 3954, + "src": "20831:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3945, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3947, + "nodeType": "VariableDeclarationStatement", + "src": "20831:9:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "20902:34:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "20916:10:2", + "value": { + "name": "write", + "nodeType": "YulIdentifier", + "src": "20921:5:2" + }, + "variableNames": [ + { + "name": "t", + "nodeType": "YulIdentifier", + "src": "20916:1:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 3946, + "isOffset": false, + "isSlot": false, + "src": "20916:1:2", + "valueSize": 1 + }, + { + "declaration": 3942, + "isOffset": false, + "isSlot": false, + "src": "20921:5:2", + "valueSize": 1 + } + ], + "id": 3948, + "nodeType": "InlineAssembly", + "src": "20893:43:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3950, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3940, + "src": "20959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "id": 3951, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3946, + "src": "20965:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3949, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20945:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20945:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "ExpressionStatement", + "src": "20945:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20761:13:2", + "parameters": { + "id": 3943, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3940, + "mutability": "mutable", + "name": "self", + "nameLocation": "20794:4:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20775:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3939, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3938, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20775:10:2" + }, + "referencedDeclaration": 3235, + "src": "20775:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3942, + "mutability": "mutable", + "name": "write", + "nameLocation": "20805:5:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20800:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3941, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20800:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20774:37:2" + }, + "returnParameters": { + "id": 3944, + "nodeType": "ParameterList", + "parameters": [], + "src": "20821:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4100, + "nodeType": "FunctionDefinition", + "src": "20980:1089:2", + "body": { + "id": 4099, + "nodeType": "Block", + "src": "21072:997:2", + "statements": [ + { + "assignments": [ + 3964 + ], + "declarations": [ + { + "constant": false, + "id": 3964, + "mutability": "mutable", + "name": "who", + "nameLocation": "21090:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21082:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21082:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3967, + "initialValue": { + "expression": { + "id": 3965, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21096:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21096:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21082:26:2" + }, + { + "assignments": [ + 3969 + ], + "declarations": [ + { + "constant": false, + "id": 3969, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "21125:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21118:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3968, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "21118:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3972, + "initialValue": { + "expression": { + "id": 3970, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21132:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3971, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21132:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21118:23:2" + }, + { + "assignments": [ + 3974 + ], + "declarations": [ + { + "constant": false, + "id": 3974, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "21159:11:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21151:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21151:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3977, + "initialValue": { + "expression": { + "id": 3975, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21173:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3976, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "21173:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21151:33:2" + }, + { + "assignments": [ + 3982 + ], + "declarations": [ + { + "constant": false, + "id": 3982, + "mutability": "mutable", + "name": "ins", + "nameLocation": "21211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21194:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3980, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3981, + "nodeType": "ArrayTypeName", + "src": "21194:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3985, + "initialValue": { + "expression": { + "id": 3983, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21217:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3984, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "21217:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21194:33:2" + }, + { + "assignments": [ + 3987 + ], + "declarations": [ + { + "constant": false, + "id": 3987, + "mutability": "mutable", + "name": "cald", + "nameLocation": "21251:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21238:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21238:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3995, + "initialValue": { + "arguments": [ + { + "id": 3990, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21275:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3992, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21289:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3991, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "21281:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21281:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21258:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21258:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21258:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21238:56:2" + }, + { + "condition": { + "id": 4010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "21308:69:2", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3996, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21309:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "21309:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3999, + "indexExpression": { + "id": 3998, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 4001, + "indexExpression": { + "id": 4000, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21325:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 4009, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4005, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4006, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21363:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4003, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21341:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21341:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21341:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4002, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21331:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21331:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4016, + "nodeType": "IfStatement", + "src": "21304:110:2", + "trueBody": { + "id": 4015, + "nodeType": "Block", + "src": "21379:35:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4012, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21398:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4011, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "21393:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21393:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4014, + "nodeType": "ExpressionStatement", + "src": "21393:10:2" + } + ] + } + }, + { + "assignments": [ + 4018 + ], + "declarations": [ + { + "constant": false, + "id": 4018, + "mutability": "mutable", + "name": "slot", + "nameLocation": "21431:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21423:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4017, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21423:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4036, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 4021, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21446:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4022, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "21446:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 4024, + "indexExpression": { + "id": 4023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21457:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 4026, + "indexExpression": { + "id": 4025, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21462:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 4034, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4030, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21495:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4031, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21500:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4028, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21478:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21478:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21478:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4027, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21468:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21468:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21438:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4019, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21438:7:2", + "typeDescriptions": {} + } + }, + "id": 4035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21438:77:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21423:92:2" + }, + { + "assignments": [ + 4038 + ], + "declarations": [ + { + "constant": false, + "id": 4038, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "21534:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21526:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21526:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4039, + "nodeType": "VariableDeclarationStatement", + "src": "21526:12:2" + }, + { + "id": 4056, + "nodeType": "Block", + "src": "21548:126:2", + "statements": [ + { + "assignments": [ + null, + 4041 + ], + "declarations": [ + null, + { + "constant": false, + "id": 4041, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "21578:4:2", + "nodeType": "VariableDeclaration", + "scope": 4056, + "src": "21565:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4040, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21565:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4046, + "initialValue": { + "arguments": [ + { + "id": 4044, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3987, + "src": "21601:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 4042, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21586:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "21586:14:2", + "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": 4045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21586:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21562:44:2" + }, + { + "expression": { + "id": 4054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4047, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21620:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4049, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "21642:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 4050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21648:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 4051, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21651:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "21648:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4048, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "21627:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 4053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21620:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4055, + "nodeType": "ExpressionStatement", + "src": "21620:43:2" + } + ] + }, + { + "assignments": [ + 4058 + ], + "declarations": [ + { + "constant": false, + "id": 4058, + "mutability": "mutable", + "name": "curr", + "nameLocation": "21691:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21683:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4064, + "initialValue": { + "arguments": [ + { + "id": 4061, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21716:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4062, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21721:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4059, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21698:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "21698:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21698:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21683:43:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4065, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 4066, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4058, + "src": "21749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21741:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4074, + "nodeType": "IfStatement", + "src": "21737:172:2", + "trueBody": { + "id": 4073, + "nodeType": "Block", + "src": "21755:154:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 4069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 4070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21784:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 4068, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "21769:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21769:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4072, + "nodeType": "ExpressionStatement", + "src": "21769:129:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4078, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21937:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4079, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21942:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4080, + "name": "set", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3960, + "src": "21948:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4075, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21918:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "21918:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 4081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21918:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4082, + "nodeType": "ExpressionStatement", + "src": "21918:34:2" + }, + { + "expression": { + "id": 4085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21962:19:2", + "subExpression": { + "expression": { + "id": 4083, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21969:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4084, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21969:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4086, + "nodeType": "ExpressionStatement", + "src": "21962:19:2" + }, + { + "expression": { + "id": 4089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21991:16:2", + "subExpression": { + "expression": { + "id": 4087, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21998:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4088, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21998:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4090, + "nodeType": "ExpressionStatement", + "src": "21991:16:2" + }, + { + "expression": { + "id": 4093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22017:17:2", + "subExpression": { + "expression": { + "id": 4091, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22024:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4092, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "22024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4094, + "nodeType": "ExpressionStatement", + "src": "22017:17:2" + }, + { + "expression": { + "id": 4097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22044:18:2", + "subExpression": { + "expression": { + "id": 4095, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22051:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4096, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "22051:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4098, + "nodeType": "ExpressionStatement", + "src": "22044:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20989:13:2", + "parameters": { + "id": 3961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3958, + "mutability": "mutable", + "name": "self", + "nameLocation": "21031:4:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21012:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3957, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3956, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "21012:10:2" + }, + "referencedDeclaration": 3235, + "src": "21012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3960, + "mutability": "mutable", + "name": "set", + "nameLocation": "21053:3:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21045:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3959, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21045:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "21002:60:2" + }, + "returnParameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [], + "src": "21072:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4132, + "nodeType": "FunctionDefinition", + "src": "22075:204:2", + "body": { + "id": 4131, + "nodeType": "Block", + "src": "22145:134:2", + "statements": [ + { + "assignments": [ + 4109 + ], + "declarations": [ + { + "constant": false, + "id": 4109, + "mutability": "mutable", + "name": "t", + "nameLocation": "22163:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22155:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22155:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4112, + "initialValue": { + "expression": { + "id": 4110, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22167:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4111, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "22167:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22155:24:2" + }, + { + "assignments": [ + 4114 + ], + "declarations": [ + { + "constant": false, + "id": 4114, + "mutability": "mutable", + "name": "s", + "nameLocation": "22197:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22189:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4113, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4118, + "initialValue": { + "arguments": [ + { + "id": 4116, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22206:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4115, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "22201:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22201:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22189:22:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4123, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4109, + "src": "22257:1:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4126, + "name": "s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4114, + "src": "22268:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22260:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4124, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22260:7:2", + "typeDescriptions": {} + } + }, + "id": 4127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22260:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4121, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "22239:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "22239:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22239:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4119, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22228:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "22228:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22228:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4107, + "id": 4130, + "nodeType": "Return", + "src": "22221:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read", + "nameLocation": "22084:4:2", + "parameters": { + "id": 4104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4103, + "mutability": "mutable", + "name": "self", + "nameLocation": "22108:4:2", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22089:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4102, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4101, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22089:10:2" + }, + "referencedDeclaration": 3235, + "src": "22089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22088:25:2" + }, + "returnParameters": { + "id": 4107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4106, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22131:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4105, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "22131:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "22130:14:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "id": 4151, + "nodeType": "FunctionDefinition", + "src": "22285:131:2", + "body": { + "id": 4150, + "nodeType": "Block", + "src": "22359:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4143, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4135, + "src": "22392:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4142, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22387:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22387:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22400:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4145, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22400:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4147, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22399:9:2", + "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": 4140, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22376:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22376:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22376:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4139, + "id": 4149, + "nodeType": "Return", + "src": "22369:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bytes32", + "nameLocation": "22294:12:2", + "parameters": { + "id": 4136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4135, + "mutability": "mutable", + "name": "self", + "nameLocation": "22326:4:2", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22307:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4134, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4133, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22307:10:2" + }, + "referencedDeclaration": 3235, + "src": "22307:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22306:25:2" + }, + "returnParameters": { + "id": 4139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4138, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22350:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4137, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "22349:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4182, + "nodeType": "FunctionDefinition", + "src": "22423:279:2", + "body": { + "id": 4181, + "nodeType": "Block", + "src": "22491:211:2", + "statements": [ + { + "assignments": [ + 4160 + ], + "declarations": [ + { + "constant": false, + "id": 4160, + "mutability": "mutable", + "name": "v", + "nameLocation": "22508:1:2", + "nodeType": "VariableDeclaration", + "scope": 4181, + "src": "22501:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4159, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "22501:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4164, + "initialValue": { + "arguments": [ + { + "id": 4162, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4154, + "src": "22521:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4161, + "name": "read_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4239, + "src": "22512:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_int256_$", + "typeString": "function (struct StdStorage storage pointer) returns (int256)" + } + }, + "id": 4163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22512:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22501:25:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4165, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22540:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 4166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4170, + "nodeType": "IfStatement", + "src": "22536:24:2", + "trueBody": { + "expression": { + "hexValue": "66616c7365", + "id": 4168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22555:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 4158, + "id": 4169, + "nodeType": "Return", + "src": "22548:12:2" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4171, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22574:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 4172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22579:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "22574:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4176, + "nodeType": "IfStatement", + "src": "22570:23:2", + "trueBody": { + "expression": { + "hexValue": "74727565", + "id": 4174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22589:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 4158, + "id": 4175, + "nodeType": "Return", + "src": "22582:11:2" + } + }, + { + "expression": { + "arguments": [ + { + "hexValue": "73746453746f7261676520726561645f626f6f6c2853746453746f72616765293a2043616e6e6f74206465636f64652e204d616b65207375726520796f75206172652072656164696e67206120626f6f6c2e", + "id": 4178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22610:84:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + }, + "value": "stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + } + ], + "id": 4177, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "22603:6:2", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 4179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22603:92:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4180, + "nodeType": "ExpressionStatement", + "src": "22603:92:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bool", + "nameLocation": "22432:9:2", + "parameters": { + "id": 4155, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4154, + "mutability": "mutable", + "name": "self", + "nameLocation": "22461:4:2", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22442:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4153, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4152, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22442:10:2" + }, + "referencedDeclaration": 3235, + "src": "22442:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22441:25:2" + }, + "returnParameters": { + "id": 4158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4157, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22485:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4156, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22485:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22484:6:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4201, + "nodeType": "FunctionDefinition", + "src": "22708:131:2", + "body": { + "id": 4200, + "nodeType": "Block", + "src": "22782:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4193, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4185, + "src": "22815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4192, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22810:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22810:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22823:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22823:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4197, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22822:9:2", + "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": 4190, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22799:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22799:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22799:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 4189, + "id": 4199, + "nodeType": "Return", + "src": "22792:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_address", + "nameLocation": "22717:12:2", + "parameters": { + "id": 4186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4185, + "mutability": "mutable", + "name": "self", + "nameLocation": "22749:4:2", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22730:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4184, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4183, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22730:10:2" + }, + "referencedDeclaration": 3235, + "src": "22730:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22729:25:2" + }, + "returnParameters": { + "id": 4189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4188, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22773:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22773:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22772:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4220, + "nodeType": "FunctionDefinition", + "src": "22845:128:2", + "body": { + "id": 4219, + "nodeType": "Block", + "src": "22916:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4212, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4204, + "src": "22949:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4211, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22944:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22944:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22957:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22957:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4216, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22956:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 4209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22933:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22933:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22933:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4208, + "id": 4218, + "nodeType": "Return", + "src": "22926:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_uint", + "nameLocation": "22854:9:2", + "parameters": { + "id": 4205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4204, + "mutability": "mutable", + "name": "self", + "nameLocation": "22883:4:2", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22864:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4203, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4202, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22864:10:2" + }, + "referencedDeclaration": 3235, + "src": "22864:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22863:25:2" + }, + "returnParameters": { + "id": 4208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4207, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22907:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22907:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22906:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4239, + "nodeType": "FunctionDefinition", + "src": "22979:125:2", + "body": { + "id": 4238, + "nodeType": "Block", + "src": "23048:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4231, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "23081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4230, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "23076:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23076:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23089:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 4233, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23089:6:2", + "typeDescriptions": {} + } + } + ], + "id": 4235, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23088:8:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + ], + "expression": { + "id": 4228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23065:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "23065:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23065:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 4227, + "id": 4237, + "nodeType": "Return", + "src": "23058:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_int", + "nameLocation": "22988:8:2", + "parameters": { + "id": 4224, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4223, + "mutability": "mutable", + "name": "self", + "nameLocation": "23016:4:2", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "22997:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4222, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4221, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22997:10:2" + }, + "referencedDeclaration": 3235, + "src": "22997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22996:25:2" + }, + "returnParameters": { + "id": 4227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4226, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "23040:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4225, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23040:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "23039:8:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4295, + "nodeType": "FunctionDefinition", + "src": "23110:297:2", + "body": { + "id": 4294, + "nodeType": "Block", + "src": "23193:214:2", + "statements": [ + { + "assignments": [ + 4249 + ], + "declarations": [ + { + "constant": false, + "id": 4249, + "mutability": "mutable", + "name": "out", + "nameLocation": "23211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23203:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4248, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23203:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4250, + "nodeType": "VariableDeclarationStatement", + "src": "23203:11:2" + }, + { + "assignments": [ + 4252 + ], + "declarations": [ + { + "constant": false, + "id": 4252, + "mutability": "mutable", + "name": "max", + "nameLocation": "23233:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23225:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4251, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4261, + "initialValue": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4253, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23239:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3332", + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23250:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23239:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "expression": { + "id": 4258, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23260:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23260:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "23239:29:2", + "trueExpression": { + "hexValue": "3332", + "id": 4257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23255:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23225:43:2" + }, + { + "body": { + "id": 4290, + "nodeType": "Block", + "src": "23309:72:2", + "statements": [ + { + "expression": { + "id": 4288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4272, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23323:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4275, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23338:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4279, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4276, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4243, + "src": "23340:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4277, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23349:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23340:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23338:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30784646", + "id": 4280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23354:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xFF" + }, + "src": "23338:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 4274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23330:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4273, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23330:7:2", + "typeDescriptions": {} + } + }, + "id": 4282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23330:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4283, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23364:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "38", + "id": 4284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23368:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "23364:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 4286, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23363:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23330:40:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "23323:47:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4289, + "nodeType": "ExpressionStatement", + "src": "23323:47:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4266, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23295:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 4267, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4252, + "src": "23299:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23295:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4291, + "initializationExpression": { + "assignments": [ + 4263 + ], + "declarations": [ + { + "constant": false, + "id": 4263, + "mutability": "mutable", + "name": "i", + "nameLocation": "23288:1:2", + "nodeType": "VariableDeclaration", + "scope": 4291, + "src": "23283:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4262, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23283:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4265, + "initialValue": { + "hexValue": "30", + "id": 4264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23292:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23283:10:2" + }, + "loopExpression": { + "expression": { + "id": 4270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23304:3:2", + "subExpression": { + "id": 4269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23304:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4271, + "nodeType": "ExpressionStatement", + "src": "23304:3:2" + }, + "nodeType": "ForStatement", + "src": "23278:103:2" + }, + { + "expression": { + "id": 4292, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23397:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4247, + "id": 4293, + "nodeType": "Return", + "src": "23390:10:2" + } + ] + }, + "functionSelector": "53584939", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bytesToBytes32", + "nameLocation": "23119:14:2", + "parameters": { + "id": 4244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4241, + "mutability": "mutable", + "name": "b", + "nameLocation": "23147:1:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23134:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4240, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23134:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4243, + "mutability": "mutable", + "name": "offset", + "nameLocation": "23155:6:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23150:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23133:29:2" + }, + "returnParameters": { + "id": 4247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4246, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23184:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4245, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23184:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "23183:9:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "id": 4336, + "nodeType": "FunctionDefinition", + "src": "23413:397:2", + "body": { + "id": 4335, + "nodeType": "Block", + "src": "23490:320:2", + "statements": [ + { + "assignments": [ + 4304 + ], + "declarations": [ + { + "constant": false, + "id": 4304, + "mutability": "mutable", + "name": "result", + "nameLocation": "23513:6:2", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "23500:19:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4303, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23500:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4312, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4307, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23532:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3332", + "id": 4309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23543:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23532:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "23522:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 4305, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23526:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 4311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23522:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23500:46:2" + }, + { + "body": { + "id": 4331, + "nodeType": "Block", + "src": "23595:185:2", + "statements": [ + { + "assignments": [ + 4325 + ], + "declarations": [ + { + "constant": false, + "id": 4325, + "mutability": "mutable", + "name": "k", + "nameLocation": "23617:1:2", + "nodeType": "VariableDeclaration", + "scope": 4331, + "src": "23609:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4324, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23609:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4329, + "initialValue": { + "baseExpression": { + "id": 4326, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23621:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4328, + "indexExpression": { + "id": 4327, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23623:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23621:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23609:16:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "23695:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "23724:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23736:2:2", + "type": "", + "value": "32" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23744:2:2", + "type": "", + "value": "32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23748:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "23740:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23740:10:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23732:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23732:19:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23720:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23720:32:2" + }, + { + "name": "k", + "nodeType": "YulIdentifier", + "src": "23754:1:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "23713:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "23713:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "23713:43:2" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 4314, + "isOffset": false, + "isSlot": false, + "src": "23748:1:2", + "valueSize": 1 + }, + { + "declaration": 4325, + "isOffset": false, + "isSlot": false, + "src": "23754:1:2", + "valueSize": 1 + }, + { + "declaration": 4304, + "isOffset": false, + "isSlot": false, + "src": "23724:6:2", + "valueSize": 1 + } + ], + "id": 4330, + "nodeType": "InlineAssembly", + "src": "23686:84:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23576:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4318, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23580:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23580:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23576:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4332, + "initializationExpression": { + "assignments": [ + 4314 + ], + "declarations": [ + { + "constant": false, + "id": 4314, + "mutability": "mutable", + "name": "i", + "nameLocation": "23569:1:2", + "nodeType": "VariableDeclaration", + "scope": 4332, + "src": "23561:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23561:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4316, + "initialValue": { + "hexValue": "30", + "id": 4315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23573:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23561:13:2" + }, + "loopExpression": { + "expression": { + "id": 4322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23590:3:2", + "subExpression": { + "id": 4321, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23590:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4323, + "nodeType": "ExpressionStatement", + "src": "23590:3:2" + }, + "nodeType": "ForStatement", + "src": "23556:224:2" + }, + { + "expression": { + "id": 4333, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4304, + "src": "23797:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4302, + "id": 4334, + "nodeType": "Return", + "src": "23790:13:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "flatten", + "nameLocation": "23422:7:2", + "parameters": { + "id": 4299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4298, + "mutability": "mutable", + "name": "b", + "nameLocation": "23447:1:2", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23430:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4296, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4297, + "nodeType": "ArrayTypeName", + "src": "23430:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "23429:20:2" + }, + "returnParameters": { + "id": 4302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23472:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4300, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23472:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "23471:14:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdStorage", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4337 + ], + "name": "stdStorage", + "nameLocation": "14948:10:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 4484, + "nodeType": "ContractDefinition", + "src": "24010:1245:2", + "nodes": [ + { + "id": 4341, + "nodeType": "VariableDeclaration", + "src": "24032:115:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MIN", + "nameLocation": "24056:10:2", + "scope": 4484, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4338, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24032:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "id": 4340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24069:78:2", + "subExpression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24070:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "typeDescriptions": { + "typeIdentifier": "t_rational_minus_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const -578...(70 digits omitted)...9968" + } + }, + "visibility": "private" + }, + { + "id": 4366, + "nodeType": "FunctionDefinition", + "src": "24154:295:2", + "body": { + "id": 4365, + "nodeType": "Block", + "src": "24209:240:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4348, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24287:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4349, + "name": "INT256_MIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4341, + "src": "24292:10:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "24287:15:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4353, + "nodeType": "IfStatement", + "src": "24283:117:2", + "trueBody": { + "expression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24323:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "functionReturnParameters": 4347, + "id": 4352, + "nodeType": "Return", + "src": "24316:84:2" + } + }, + { + "expression": { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4356, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24426:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24431:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24426:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 4361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24439:2:2", + "subExpression": { + "id": 4360, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24426:15:2", + "trueExpression": { + "id": 4359, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24435:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24418:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24418:7:2", + "typeDescriptions": {} + } + }, + "id": 4363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24418:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4347, + "id": 4364, + "nodeType": "Return", + "src": "24411:31:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "abs", + "nameLocation": "24163:3:2", + "parameters": { + "id": 4344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4343, + "mutability": "mutable", + "name": "a", + "nameLocation": "24174:1:2", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24167:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4342, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24167:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24166:10:2" + }, + "returnParameters": { + "id": 4347, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4346, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24200:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24199:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4387, + "nodeType": "FunctionDefinition", + "src": "24455:138:2", + "body": { + "id": 4386, + "nodeType": "Block", + "src": "24524:69:2", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4375, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 4376, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24541:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4381, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24581:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24585:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24581:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24541:45:2", + "trueExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4378, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24561:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4379, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24565:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24561:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4374, + "id": 4385, + "nodeType": "Return", + "src": "24534:52:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24464:5:2", + "parameters": { + "id": 4371, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4368, + "mutability": "mutable", + "name": "a", + "nameLocation": "24478:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24470:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24470:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4370, + "mutability": "mutable", + "name": "b", + "nameLocation": "24489:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24481:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4369, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24481:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24469:22:2" + }, + "returnParameters": { + "id": 4374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4373, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24515:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24515:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24514:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4431, + "nodeType": "FunctionDefinition", + "src": "24599:290:2", + "body": { + "id": 4430, + "nodeType": "Block", + "src": "24666:223:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4396, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24720:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24725:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24720:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4399, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24730:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24735:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24730:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4403, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24740:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24744:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24740:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4406, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24749:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24740:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:34:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4421, + "nodeType": "IfStatement", + "src": "24716:93:2", + "trueBody": { + "id": 4420, + "nodeType": "Block", + "src": "24756:53:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4412, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24783:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 4416, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24795:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4415, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24791:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24791:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4411, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "24777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24777:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4419, + "nodeType": "Return", + "src": "24770:28:2" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 4423, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4422, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24867:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24867:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 4426, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24880:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4425, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24876:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24876:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24867:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4429, + "nodeType": "Return", + "src": "24860:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24608:5:2", + "parameters": { + "id": 4392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4389, + "mutability": "mutable", + "name": "a", + "nameLocation": "24621:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24614:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4388, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24614:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4391, + "mutability": "mutable", + "name": "b", + "nameLocation": "24631:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24624:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4390, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24624:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24613:20:2" + }, + "returnParameters": { + "id": 4395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4394, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24657:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24657:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24656:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4454, + "nodeType": "FunctionDefinition", + "src": "24895:160:2", + "body": { + "id": 4453, + "nodeType": "Block", + "src": "24971:84:2", + "statements": [ + { + "assignments": [ + 4441 + ], + "declarations": [ + { + "constant": false, + "id": 4441, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "24989:8:2", + "nodeType": "VariableDeclaration", + "scope": 4453, + "src": "24981:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4440, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24981:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4446, + "initialValue": { + "arguments": [ + { + "id": 4443, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4433, + "src": "25006:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4444, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25009:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4442, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "25000:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25000:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24981:30:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4447, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4441, + "src": "25029:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25040:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25029:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4450, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25047:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25029:19:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4439, + "id": 4452, + "nodeType": "Return", + "src": "25022:26:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "24904:12:2", + "parameters": { + "id": 4436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4433, + "mutability": "mutable", + "name": "a", + "nameLocation": "24925:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24917:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24917:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4435, + "mutability": "mutable", + "name": "b", + "nameLocation": "24936:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24928:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24928:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24916:22:2" + }, + "returnParameters": { + "id": 4439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4438, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24962:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4437, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24962:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24961:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4483, + "nodeType": "FunctionDefinition", + "src": "25061:192:2", + "body": { + "id": 4482, + "nodeType": "Block", + "src": "25135:118:2", + "statements": [ + { + "assignments": [ + 4464 + ], + "declarations": [ + { + "constant": false, + "id": 4464, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "25153:8:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25145:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4463, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25145:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4469, + "initialValue": { + "arguments": [ + { + "id": 4466, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "25170:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4467, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25173:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4465, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4431, + "src": "25164:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 4468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25164:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25145:30:2" + }, + { + "assignments": [ + 4471 + ], + "declarations": [ + { + "constant": false, + "id": 4471, + "mutability": "mutable", + "name": "absB", + "nameLocation": "25193:4:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25185:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25185:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4475, + "initialValue": { + "arguments": [ + { + "id": 4473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25204:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4472, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "25200:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25200:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25185:21:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4476, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4464, + "src": "25224:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25235:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25224:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4479, + "name": "absB", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4471, + "src": "25242:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25224:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4462, + "id": 4481, + "nodeType": "Return", + "src": "25217:29:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "25070:12:2", + "parameters": { + "id": 4459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4456, + "mutability": "mutable", + "name": "a", + "nameLocation": "25090:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25083:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4455, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25083:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4458, + "mutability": "mutable", + "name": "b", + "nameLocation": "25100:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25093:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4457, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25093:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "25082:20:2" + }, + "returnParameters": { + "id": 4462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25126:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25126:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25125:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4484 + ], + "name": "stdMath", + "nameLocation": "24018:7:2", + "scope": 4485, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 2 +} \ No newline at end of file diff --git a/getting-started/foundry/out/test.sol/stdError.json b/getting-started/foundry/out/test.sol/stdError.json new file mode 100644 index 00000000..23b29c82 --- /dev/null +++ b/getting-started/foundry/out/test.sol/stdError.json @@ -0,0 +1,35290 @@ +{ + "abi": [ + { + "inputs": [], + "name": "arithmeticError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "assertionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "divisionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "encodeStorageError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "enumConversionError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "indexOOBError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lowLevelError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "memOverflowError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "popError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "zeroVarError", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": { + "object": "0x61027761003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100a85760003560e01c8063ac3d92c611610070578063ac3d92c6146100eb578063b22dc54d14610101578063b67689da14610109578063d160e4de14610111578063fa784a441461011957600080fd5b806305ee8612146100ad57806310332977146100cb5780631de45560146100d35780638995290f146100db578063986c5f68146100e3575b600080fd5b6100b5610121565b6040516100c291906101ec565b60405180910390f35b6100b561015c565b6100b561016e565b6100b5610180565b6100b5610192565b6100b56040518060200160405280600081525081565b6100b56101a4565b6100b56101b6565b6100b56101c8565b6100b56101da565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161012f565b6040516021602482015260440161012f565b6040516011602482015260440161012f565b6040516041602482015260440161012f565b6040516031602482015260440161012f565b6040516051602482015260440161012f565b6040516022602482015260440161012f565b6040516012602482015260440161012f565b600060208083528351808285015260005b81811015610219578581018301518582016040015282016101fd565b8181111561022b576000604083870101525b50601f01601f191692909201604001939250505056fea2646970667358221220d545e3dfcc063a1e96ffd4d5afb2ec5cd1861d8ad0e06b8681a964721e664bd964736f6c634300080d0033", + "sourceMap": "13478:984:2:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;13478:984:2;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600436106100a85760003560e01c8063ac3d92c611610070578063ac3d92c6146100eb578063b22dc54d14610101578063b67689da14610109578063d160e4de14610111578063fa784a441461011957600080fd5b806305ee8612146100ad57806310332977146100cb5780631de45560146100d35780638995290f146100db578063986c5f68146100e3575b600080fd5b6100b5610121565b6040516100c291906101ec565b60405180910390f35b6100b561015c565b6100b561016e565b6100b5610180565b6100b5610192565b6100b56040518060200160405280600081525081565b6100b56101a4565b6100b56101b6565b6100b56101c8565b6100b56101da565b604051603260248201526044015b60408051601f198184030181529190526020810180516001600160e01b0316634e487b7160e01b17905281565b6040516001602482015260440161012f565b6040516021602482015260440161012f565b6040516011602482015260440161012f565b6040516041602482015260440161012f565b6040516031602482015260440161012f565b6040516051602482015260440161012f565b6040516022602482015260440161012f565b6040516012602482015260440161012f565b600060208083528351808285015260005b81811015610219578581018301518582016040015282016101fd565b8181111561022b576000604083870101525b50601f01601f191692909201604001939250505056fea2646970667358221220d545e3dfcc063a1e96ffd4d5afb2ec5cd1861d8ad0e06b8681a964721e664bd964736f6c634300080d0033", + "sourceMap": "13478:984:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14056:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13501:86;;;:::i;13777:91::-;;;:::i;13593:87::-;;;:::i;14147:88::-;;;:::i;14404:47::-;;14442:9;;;;;;;;;;;;14404:47;;13970:80;;;:::i;14241:84::-;;;:::i;13874:90::-;;;:::i;13686:85::-;;;:::i;14056:::-;14094:47;;14136:4;14094:47;;;775:36:9;748:18;;14094:47:2;;;;-1:-1:-1;;14094:47:2;;;;;;;;;;;;;;-1:-1:-1;;;;;14094:47:2;-1:-1:-1;;;14094:47:2;;;14056:85;:::o;13501:86::-;13540:47;;13582:4;13540:47;;;775:36:9;748:18;;13540:47:2;622:195:9;13777:91:2;13821:47;;13863:4;13821:47;;;775:36:9;748:18;;13821:47:2;622:195:9;13593:87:2;13633:47;;13675:4;13633:47;;;775:36:9;748:18;;13633:47:2;622:195:9;14147:88:2;14188:47;;14230:4;14188:47;;;775:36:9;748:18;;14188:47:2;622:195:9;13970:80:2;14003:47;;14045:4;14003:47;;;775:36:9;748:18;;14003:47:2;622:195:9;14241:84:2;14278:47;;14320:4;14278:47;;;775:36:9;748:18;;14278:47:2;622:195:9;13874:90:2;13917:47;;13959:4;13917:47;;;775:36:9;748:18;;13917:47:2;622:195:9;13686:85:2;13724:47;;13766:4;13724:47;;;775:36:9;748:18;;13724:47:2;622:195:9;14:603;132:4;161:2;190;179:9;172:21;222:6;216:13;265:6;260:2;249:9;245:18;238:34;290:1;300:140;314:6;311:1;308:13;300:140;;;409:14;;;405:23;;399:30;375:17;;;394:2;371:26;364:66;329:10;;300:140;;;458:6;455:1;452:13;449:91;;;528:1;523:2;514:6;503:9;499:22;495:31;488:42;449:91;-1:-1:-1;601:2:9;580:15;-1:-1:-1;;576:29:9;561:45;;;;608:2;557:54;;14:603;-1:-1:-1;;;14:603:9:o", + "linkReferences": {} + }, + "methodIdentifiers": { + "arithmeticError()": "8995290f", + "assertionError()": "10332977", + "divisionError()": "fa784a44", + "encodeStorageError()": "d160e4de", + "enumConversionError()": "1de45560", + "indexOOBError()": "05ee8612", + "lowLevelError()": "ac3d92c6", + "memOverflowError()": "986c5f68", + "popError()": "b22dc54d", + "zeroVarError()": "b67689da" + }, + "ast": { + "absolutePath": "lib/forge-std/src/Test.sol", + "id": 4485, + "exportedSymbols": { + "DSTest": [ + 1786 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "38:25218:2", + "nodes": [ + { + "id": 1820, + "nodeType": "PragmaDirective", + "src": "38:31:2", + "literals": [ + "solidity", + ">=", + "0.6", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 1821, + "nodeType": "ImportDirective", + "src": "71:22:2", + "absolutePath": "lib/forge-std/src/Script.sol", + "file": "./Script.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1819, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1822, + "nodeType": "ImportDirective", + "src": "94:26:2", + "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", + "file": "ds-test/test.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1787, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 3137, + "nodeType": "ContractDefinition", + "src": "170:13108:2", + "nodes": [ + { + "id": 1830, + "nodeType": "UsingForDirective", + "src": "217:32:2", + "global": false, + "libraryName": { + "id": 1827, + "name": "stdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4337, + "src": "223:10:2" + }, + "typeName": { + "id": 1829, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1828, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "238:10:2" + }, + "referencedDeclaration": 3235, + "src": "238:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + } + }, + { + "id": 1833, + "nodeType": "VariableDeclaration", + "src": "255:126:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "281:11:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "255:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 1832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "303:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "internal" + }, + { + "id": 1836, + "nodeType": "VariableDeclaration", + "src": "388:28:2", + "constant": false, + "mutability": "mutable", + "name": "stdstore", + "nameLocation": "408:8:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 1835, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1834, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "388:10:2" + }, + "referencedDeclaration": 3235, + "src": "388:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "id": 1841, + "nodeType": "EventDefinition", + "src": "631:31:2", + "anonymous": false, + "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", + "name": "log_array", + "nameLocation": "637:9:2", + "parameters": { + "id": 1840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1839, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "657:3:2", + "nodeType": "VariableDeclaration", + "scope": 1841, + "src": "647:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1837, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "647:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1838, + "nodeType": "ArrayTypeName", + "src": "647:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "646:15:2" + } + }, + { + "id": 1846, + "nodeType": "EventDefinition", + "src": "667:30:2", + "anonymous": false, + "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", + "name": "log_array", + "nameLocation": "673:9:2", + "parameters": { + "id": 1845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1844, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "692:3:2", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1842, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "683:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1843, + "nodeType": "ArrayTypeName", + "src": "683:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "682:14:2" + } + }, + { + "id": 1851, + "nodeType": "EventDefinition", + "src": "702:31:2", + "anonymous": false, + "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", + "name": "log_array", + "nameLocation": "708:9:2", + "parameters": { + "id": 1850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1849, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "728:3:2", + "nodeType": "VariableDeclaration", + "scope": 1851, + "src": "718:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "718:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1848, + "nodeType": "ArrayTypeName", + "src": "718:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "717:15:2" + } + }, + { + "id": 1858, + "nodeType": "EventDefinition", + "src": "738:49:2", + "anonymous": false, + "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", + "name": "log_named_array", + "nameLocation": "744:15:2", + "parameters": { + "id": 1857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1853, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "767:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "760:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1852, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "760:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1856, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "782:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "772:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "772:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1855, + "nodeType": "ArrayTypeName", + "src": "772:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "759:27:2" + } + }, + { + "id": 1865, + "nodeType": "EventDefinition", + "src": "792:48:2", + "anonymous": false, + "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", + "name": "log_named_array", + "nameLocation": "798:15:2", + "parameters": { + "id": 1864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1860, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "821:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "814:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1859, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "814:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1863, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "835:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "826:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1861, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "826:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1862, + "nodeType": "ArrayTypeName", + "src": "826:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "813:26:2" + } + }, + { + "id": 1872, + "nodeType": "EventDefinition", + "src": "845:49:2", + "anonymous": false, + "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", + "name": "log_named_array", + "nameLocation": "851:15:2", + "parameters": { + "id": 1871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1867, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "874:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "867:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "867:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1870, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "889:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "879:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "879:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1869, + "nodeType": "ArrayTypeName", + "src": "879:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "866:27:2" + } + }, + { + "id": 1887, + "nodeType": "FunctionDefinition", + "src": "1180:83:2", + "body": { + "id": 1886, + "nodeType": "Block", + "src": "1215:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1880, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1233:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1233:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1882, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1874, + "src": "1251:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1233:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1877, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1225:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1225:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1885, + "nodeType": "ExpressionStatement", + "src": "1225:31:2" + } + ] + }, + "functionSelector": "b9c071b4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "skip", + "nameLocation": "1189:4:2", + "parameters": { + "id": 1875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1874, + "mutability": "mutable", + "name": "time", + "nameLocation": "1202:4:2", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "1194:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1193:14:2" + }, + "returnParameters": { + "id": 1876, + "nodeType": "ParameterList", + "parameters": [], + "src": "1215:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1902, + "nodeType": "FunctionDefinition", + "src": "1269:85:2", + "body": { + "id": 1901, + "nodeType": "Block", + "src": "1306:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1895, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1324:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1324:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1897, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "1342:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1324:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1892, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1316:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1316:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1316:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1900, + "nodeType": "ExpressionStatement", + "src": "1316:31:2" + } + ] + }, + "functionSelector": "2d6c17a3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rewind", + "nameLocation": "1278:6:2", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "mutability": "mutable", + "name": "time", + "nameLocation": "1293:4:2", + "nodeType": "VariableDeclaration", + "scope": 1902, + "src": "1285:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1285:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1284:14:2" + }, + "returnParameters": { + "id": 1891, + "nodeType": "ParameterList", + "parameters": [], + "src": "1306:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1923, + "nodeType": "FunctionDefinition", + "src": "1417:96:2", + "body": { + "id": 1922, + "nodeType": "Block", + "src": "1451:62:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1910, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1469:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1474:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1479:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1474:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1907, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1461:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1461:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1461:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1915, + "nodeType": "ExpressionStatement", + "src": "1461:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1919, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1502:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1916, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1493:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1493:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1493:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1921, + "nodeType": "ExpressionStatement", + "src": "1493:13:2" + } + ] + }, + "functionSelector": "233240ee", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1426:4:2", + "parameters": { + "id": 1905, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1904, + "mutability": "mutable", + "name": "who", + "nameLocation": "1439:3:2", + "nodeType": "VariableDeclaration", + "scope": 1923, + "src": "1431:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1903, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1431:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1430:13:2" + }, + "returnParameters": { + "id": 1906, + "nodeType": "ParameterList", + "parameters": [], + "src": "1451:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1944, + "nodeType": "FunctionDefinition", + "src": "1519:106:2", + "body": { + "id": 1943, + "nodeType": "Block", + "src": "1567:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1933, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1934, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "1590:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1930, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1577:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1577:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1577:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1936, + "nodeType": "ExpressionStatement", + "src": "1577:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1940, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1614:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1937, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1605:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1605:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1605:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1942, + "nodeType": "ExpressionStatement", + "src": "1605:13:2" + } + ] + }, + "functionSelector": "e9a79a7b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1528:4:2", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1925, + "mutability": "mutable", + "name": "who", + "nameLocation": "1541:3:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1533:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1533:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1927, + "mutability": "mutable", + "name": "give", + "nameLocation": "1554:4:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1546:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1546:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1532:27:2" + }, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "1567:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1968, + "nodeType": "FunctionDefinition", + "src": "1631:120:2", + "body": { + "id": 1967, + "nodeType": "Block", + "src": "1681:70:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1954, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1699:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1704:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1709:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1704:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1951, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1691:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1691:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1959, + "nodeType": "ExpressionStatement", + "src": "1691:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1963, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1732:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1964, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1948, + "src": "1737:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1960, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1723:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1723:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1966, + "nodeType": "ExpressionStatement", + "src": "1723:21:2" + } + ] + }, + "functionSelector": "29a9e300", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1640:4:2", + "parameters": { + "id": 1949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1946, + "mutability": "mutable", + "name": "who", + "nameLocation": "1653:3:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1645:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1945, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1645:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1948, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1666:6:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1658:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1658:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1644:29:2" + }, + "returnParameters": { + "id": 1950, + "nodeType": "ParameterList", + "parameters": [], + "src": "1681:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1992, + "nodeType": "FunctionDefinition", + "src": "1757:130:2", + "body": { + "id": 1991, + "nodeType": "Block", + "src": "1821:66:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1980, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1839:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1981, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1974, + "src": "1844:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1977, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1831:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1983, + "nodeType": "ExpressionStatement", + "src": "1831:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1987, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1868:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1988, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1972, + "src": "1873:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1984, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1859:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1859:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1859:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1990, + "nodeType": "ExpressionStatement", + "src": "1859:21:2" + } + ] + }, + "functionSelector": "af9bbe5f", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1766:4:2", + "parameters": { + "id": 1975, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1970, + "mutability": "mutable", + "name": "who", + "nameLocation": "1779:3:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1771:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1969, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1771:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1972, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1792:6:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1784:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1784:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1974, + "mutability": "mutable", + "name": "give", + "nameLocation": "1808:4:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1800:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1800:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1770:43:2" + }, + "returnParameters": { + "id": 1976, + "nodeType": "ParameterList", + "parameters": [], + "src": "1821:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2013, + "nodeType": "FunctionDefinition", + "src": "1958:106:2", + "body": { + "id": 2012, + "nodeType": "Block", + "src": "1997:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2000, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2015:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2020:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2025:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2020:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1997, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2007:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2005, + "nodeType": "ExpressionStatement", + "src": "2007:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2009, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2053:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2006, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2039:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2039:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2039:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2011, + "nodeType": "ExpressionStatement", + "src": "2039:18:2" + } + ] + }, + "functionSelector": "6f597075", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "1967:9:2", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1994, + "mutability": "mutable", + "name": "who", + "nameLocation": "1985:3:2", + "nodeType": "VariableDeclaration", + "scope": 2013, + "src": "1977:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1977:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1976:13:2" + }, + "returnParameters": { + "id": 1996, + "nodeType": "ParameterList", + "parameters": [], + "src": "1997:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2034, + "nodeType": "FunctionDefinition", + "src": "2070:116:2", + "body": { + "id": 2033, + "nodeType": "Block", + "src": "2123:63:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2141:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2024, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "2146:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2020, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2133:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2133:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2133:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2026, + "nodeType": "ExpressionStatement", + "src": "2133:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2030, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2175:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2027, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2161:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2161:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2161:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2032, + "nodeType": "ExpressionStatement", + "src": "2161:18:2" + } + ] + }, + "functionSelector": "108554f2", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2079:9:2", + "parameters": { + "id": 2018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2015, + "mutability": "mutable", + "name": "who", + "nameLocation": "2097:3:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2089:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2089:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "give", + "nameLocation": "2110:4:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2102:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2102:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2088:27:2" + }, + "returnParameters": { + "id": 2019, + "nodeType": "ParameterList", + "parameters": [], + "src": "2123:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2058, + "nodeType": "FunctionDefinition", + "src": "2305:130:2", + "body": { + "id": 2057, + "nodeType": "Block", + "src": "2360:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2044, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2378:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2383:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2388:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2383:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 2041, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2370:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2370:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2370:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2049, + "nodeType": "ExpressionStatement", + "src": "2370:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2053, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2416:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2054, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2038, + "src": "2421:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2050, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2402:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2402:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2402:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "2402:26:2" + } + ] + }, + "functionSelector": "d06d8229", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2314:9:2", + "parameters": { + "id": 2039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2036, + "mutability": "mutable", + "name": "who", + "nameLocation": "2332:3:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2324:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2324:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2038, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2345:6:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2337:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2037, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2337:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2323:29:2" + }, + "returnParameters": { + "id": 2040, + "nodeType": "ParameterList", + "parameters": [], + "src": "2360:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2082, + "nodeType": "FunctionDefinition", + "src": "2441:140:2", + "body": { + "id": 2081, + "nodeType": "Block", + "src": "2510:71:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2070, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2528:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2071, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2064, + "src": "2533:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2067, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2520:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2520:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2520:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2073, + "nodeType": "ExpressionStatement", + "src": "2520:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2077, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2562:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2078, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "2567:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2074, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2548:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2548:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2548:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2080, + "nodeType": "ExpressionStatement", + "src": "2548:26:2" + } + ] + }, + "functionSelector": "3bf82db1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2450:9:2", + "parameters": { + "id": 2065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2060, + "mutability": "mutable", + "name": "who", + "nameLocation": "2468:3:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2460:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2059, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2460:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2062, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2481:6:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2473:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2473:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2064, + "mutability": "mutable", + "name": "give", + "nameLocation": "2497:4:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2489:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2489:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2459:43:2" + }, + "returnParameters": { + "id": 2066, + "nodeType": "ParameterList", + "parameters": [], + "src": "2510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2099, + "nodeType": "FunctionDefinition", + "src": "2587:102:2", + "body": { + "id": 2098, + "nodeType": "Block", + "src": "2630:59:2", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2087, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2640:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4726, + "src": "2640:12:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 2090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2640:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2091, + "nodeType": "ExpressionStatement", + "src": "2640:14:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2095, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2084, + "src": "2678:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2092, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2664:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2664:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2664:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2097, + "nodeType": "ExpressionStatement", + "src": "2664:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "changePrank", + "nameLocation": "2596:11:2", + "parameters": { + "id": 2085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2084, + "mutability": "mutable", + "name": "who", + "nameLocation": "2616:3:2", + "nodeType": "VariableDeclaration", + "scope": 2099, + "src": "2608:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2608:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2607:13:2" + }, + "returnParameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [], + "src": "2630:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2129, + "nodeType": "FunctionDefinition", + "src": "2733:341:2", + "body": { + "id": 2128, + "nodeType": "Block", + "src": "2794:280:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "5741524e494e47", + "id": 2109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2826:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + "value": "WARNING" + }, + { + "hexValue": "546573742074697028616464726573732c616464726573732c75696e74323536293a2054686520607469706020737464636865617420686173206265656e20646570726563617465642e2055736520606465616c6020696e73746561642e", + "id": 2110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2837:96:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + }, + "value": "Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + } + ], + "id": 2108, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "2809:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2809:125:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2112, + "nodeType": "EmitStatement", + "src": "2804:130:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2125, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2105, + "src": "3062:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2122, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2103, + "src": "3031:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2116, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2101, + "src": "2973:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2113, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2944:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2115, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "2944:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2118, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "2944:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2121, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "2944:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2124, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "2944:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2127, + "nodeType": "ExpressionStatement", + "src": "2944:123:2" + } + ] + }, + "functionSelector": "d82555f1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tip", + "nameLocation": "2742:3:2", + "parameters": { + "id": 2106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2101, + "mutability": "mutable", + "name": "token", + "nameLocation": "2754:5:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2746:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2746:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2103, + "mutability": "mutable", + "name": "to", + "nameLocation": "2769:2:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2761:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2761:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2105, + "mutability": "mutable", + "name": "give", + "nameLocation": "2781:4:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2773:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2104, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2773:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2745:41:2" + }, + "returnParameters": { + "id": 2107, + "nodeType": "ParameterList", + "parameters": [], + "src": "2794:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2144, + "nodeType": "FunctionDefinition", + "src": "3165:81:2", + "body": { + "id": 2143, + "nodeType": "Block", + "src": "3212:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2139, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "3230:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2140, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "3234:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2136, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "3222:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "3222:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3222:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2142, + "nodeType": "ExpressionStatement", + "src": "3222:17:2" + } + ] + }, + "functionSelector": "c88a5e6d", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3174:4:2", + "parameters": { + "id": 2134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2131, + "mutability": "mutable", + "name": "to", + "nameLocation": "3187:2:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3179:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3179:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2133, + "mutability": "mutable", + "name": "give", + "nameLocation": "3199:4:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3191:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2132, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3191:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3178:26:2" + }, + "returnParameters": { + "id": 2135, + "nodeType": "ParameterList", + "parameters": [], + "src": "3212:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2161, + "nodeType": "FunctionDefinition", + "src": "3370:107:2", + "body": { + "id": 2160, + "nodeType": "Block", + "src": "3432:45:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2154, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2146, + "src": "3447:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2155, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2148, + "src": "3454:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2156, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2150, + "src": "3458:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "66616c7365", + "id": 2157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3464:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2153, + "name": "deal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2144, + 2161, + 2264 + ], + "referencedDeclaration": 2264, + "src": "3442:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$", + "typeString": "function (address,address,uint256,bool)" + } + }, + "id": 2158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3442:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2159, + "nodeType": "ExpressionStatement", + "src": "3442:28:2" + } + ] + }, + "functionSelector": "6bce989b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3379:4:2", + "parameters": { + "id": 2151, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2146, + "mutability": "mutable", + "name": "token", + "nameLocation": "3392:5:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3384:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2145, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3384:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "mutability": "mutable", + "name": "to", + "nameLocation": "3407:2:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3399:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3399:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "mutability": "mutable", + "name": "give", + "nameLocation": "3419:4:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3411:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2149, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3411:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3383:41:2" + }, + "returnParameters": { + "id": 2152, + "nodeType": "ParameterList", + "parameters": [], + "src": "3432:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2264, + "nodeType": "FunctionDefinition", + "src": "3483:915:2", + "body": { + "id": 2263, + "nodeType": "Block", + "src": "3558:840:2", + "statements": [ + { + "assignments": [ + null, + 2173 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2173, + "mutability": "mutable", + "name": "balData", + "nameLocation": "3615:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3602:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2172, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3602:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2182, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3660:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + }, + { + "id": 2179, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3672:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2176, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3637:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "3637:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3637:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2174, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3626:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3626:10:2", + "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": 2181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3626:50:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3599:77:2" + }, + { + "assignments": [ + 2184 + ], + "declarations": [ + { + "constant": false, + "id": 2184, + "mutability": "mutable", + "name": "prevBal", + "nameLocation": "3694:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3686:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2192, + "initialValue": { + "arguments": [ + { + "id": 2187, + "name": "balData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2173, + "src": "3715:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3725:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3725:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2190, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3724:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2185, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3704:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "3704:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3704:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3686:48:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2205, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "3889:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2202, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3858:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3824:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2196, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3800:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2193, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3771:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2195, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "3771:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2198, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "3771:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "3771:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "3771:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2207, + "nodeType": "ExpressionStatement", + "src": "3771:123:2" + }, + { + "condition": { + "id": 2208, + "name": "adjust", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2169, + "src": "3939:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2262, + "nodeType": "IfStatement", + "src": "3936:456:2", + "trueBody": { + "id": 2261, + "nodeType": "Block", + "src": "3946:446:2", + "statements": [ + { + "assignments": [ + null, + 2210 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2210, + "mutability": "mutable", + "name": "totSupData", + "nameLocation": "3976:10:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "3963:23:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2209, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3963:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2218, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "id": 2213, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4001:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "4001:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4001:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2211, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3990:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3990:10:2", + "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": 2217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3990:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3960:76:2" + }, + { + "assignments": [ + 2220 + ], + "declarations": [ + { + "constant": false, + "id": 2220, + "mutability": "mutable", + "name": "totSup", + "nameLocation": "4058:6:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "4050:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4050:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2228, + "initialValue": { + "arguments": [ + { + "id": 2223, + "name": "totSupData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2210, + "src": "4078:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2225, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4091:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4091:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2226, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4090:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2221, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4067:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "4067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4067:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4050:50:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2229, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4117:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2230, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4124:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4117:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2247, + "nodeType": "Block", + "src": "4198:59:2", + "statements": [ + { + "expression": { + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2240, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4216:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2241, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4227:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2242, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4234:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4227:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2244, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4226:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4216:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2246, + "nodeType": "ExpressionStatement", + "src": "4216:26:2" + } + ] + }, + "id": 2248, + "nodeType": "IfStatement", + "src": "4114:143:2", + "trueBody": { + "id": 2239, + "nodeType": "Block", + "src": "4133:59:2", + "statements": [ + { + "expression": { + "id": 2237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2232, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4151:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2233, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4162:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2234, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4172:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4162:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2236, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4161:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4151:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2238, + "nodeType": "ExpressionStatement", + "src": "4151:26:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2258, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4374:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4331:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "arguments": [ + { + "id": 2252, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "4303:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2249, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "4270:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2251, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "4270:32:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "4270:60:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:72:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2257, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "4270:103:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:111:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2260, + "nodeType": "ExpressionStatement", + "src": "4270:111:2" + } + ] + } + } + ] + }, + "functionSelector": "97754ae9", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3492:4:2", + "parameters": { + "id": 2170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2163, + "mutability": "mutable", + "name": "token", + "nameLocation": "3505:5:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3497:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3497:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2165, + "mutability": "mutable", + "name": "to", + "nameLocation": "3520:2:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3512:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3512:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2167, + "mutability": "mutable", + "name": "give", + "nameLocation": "3532:4:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3524:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3524:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2169, + "mutability": "mutable", + "name": "adjust", + "nameLocation": "3543:6:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3538:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3538:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3496:54:2" + }, + "returnParameters": { + "id": 2171, + "nodeType": "ParameterList", + "parameters": [], + "src": "3558:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2328, + "nodeType": "FunctionDefinition", + "src": "4404:578:2", + "body": { + "id": 2327, + "nodeType": "Block", + "src": "4498:484:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2276, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4516:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 2277, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4523:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4516:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "5465737420626f756e642875696e743235362c75696e743235362c75696e74323536293a204d6178206973206c657373207468616e206d696e2e", + "id": 2279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4528:60:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + }, + "value": "Test bound(uint256,uint256,uint256): Max is less than min." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + } + ], + "id": 2275, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:81:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2281, + "nodeType": "ExpressionStatement", + "src": "4508:81:2" + }, + { + "assignments": [ + 2283 + ], + "declarations": [ + { + "constant": false, + "id": 2283, + "mutability": "mutable", + "name": "size", + "nameLocation": "4608:4:2", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "4600:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2282, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4600:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2287, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2284, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4615:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2285, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4621:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4615:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4600:24:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2288, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4639:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4647:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4639:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2296, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4713:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2297, + "name": "UINT256_MAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1833, + "src": "4721:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4713:19:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2319, + "nodeType": "Block", + "src": "4799:123:2", + "statements": [ + { + "expression": { + "id": 2305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "4813:6:2", + "subExpression": { + "id": 2304, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2306, + "nodeType": "ExpressionStatement", + "src": "4813:6:2" + }, + { + "assignments": [ + 2308 + ], + "declarations": [ + { + "constant": false, + "id": 2308, + "mutability": "mutable", + "name": "mod", + "nameLocation": "4865:3:2", + "nodeType": "VariableDeclaration", + "scope": 2319, + "src": "4857:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2307, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4857:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2312, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2309, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 2310, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4875:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4871:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4857:22:2" + }, + { + "expression": { + "id": 2317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2313, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4893:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2314, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4902:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2315, + "name": "mod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "4908:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4893:18:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2318, + "nodeType": "ExpressionStatement", + "src": "4893:18:2" + } + ] + }, + "id": 2320, + "nodeType": "IfStatement", + "src": "4709:213:2", + "trueBody": { + "id": 2303, + "nodeType": "Block", + "src": "4742:35:2", + "statements": [ + { + "expression": { + "id": 2301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2299, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4756:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2300, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4765:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4756:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2302, + "nodeType": "ExpressionStatement", + "src": "4756:10:2" + } + ] + } + }, + "id": 2321, + "nodeType": "IfStatement", + "src": "4635:287:2", + "trueBody": { + "id": 2295, + "nodeType": "Block", + "src": "4658:37:2", + "statements": [ + { + "expression": { + "id": 2293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2291, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4672:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2292, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4681:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4672:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2294, + "nodeType": "ExpressionStatement", + "src": "4672:12:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "426f756e6420526573756c74", + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4952:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + "value": "Bound Result" + }, + { + "id": 2324, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4968:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2322, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "4937:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4937:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2326, + "nodeType": "EmitStatement", + "src": "4932:43:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bound", + "nameLocation": "4413:5:2", + "parameters": { + "id": 2271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2266, + "mutability": "mutable", + "name": "x", + "nameLocation": "4427:1:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4419:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2268, + "mutability": "mutable", + "name": "min", + "nameLocation": "4438:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4430:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2267, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2270, + "mutability": "mutable", + "name": "max", + "nameLocation": "4451:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4443:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2269, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4443:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4418:37:2" + }, + "returnParameters": { + "id": 2274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2273, + "mutability": "mutable", + "name": "result", + "nameLocation": "4490:6:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4482:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2272, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4482:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4481:16:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2360, + "nodeType": "FunctionDefinition", + "src": "5142:455:2", + "body": { + "id": 2359, + "nodeType": "Block", + "src": "5251:346:2", + "statements": [ + { + "assignments": [ + 2338 + ], + "declarations": [ + { + "constant": false, + "id": 2338, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5274:8:2", + "nodeType": "VariableDeclaration", + "scope": 2359, + "src": "5261:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2337, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5261:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2347, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 2343, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2330, + "src": "5313:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2341, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5302:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5302:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5302:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2345, + "name": "args", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2332, + "src": "5320:4:2", + "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": 2339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5285:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "5285:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5285:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5261:64:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5387:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5401:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5416:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5423:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5433:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5419:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5419:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5446:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5440:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5440:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5409:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5409:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5401:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2335, + "isOffset": false, + "isSlot": false, + "src": "5401:4:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5423:8:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5446:8:2", + "valueSize": 1 + } + ], + "id": 2348, + "nodeType": "InlineAssembly", + "src": "5378:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2350, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2335, + "src": "5497:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:1:2", + "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": 2352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5505:7:2", + "typeDescriptions": {} + } + }, + "id": 2354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5505:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5497:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e672c6279746573293a204465706c6f796d656e74206661696c65642e", + "id": 2356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5529:51:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + }, + "value": "Test deployCode(string,bytes): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + } + ], + "id": 2349, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5476:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5476:114:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2358, + "nodeType": "ExpressionStatement", + "src": "5476:114:2" + } + ] + }, + "functionSelector": "29ce9dde", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5151:10:2", + "parameters": { + "id": 2333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2330, + "mutability": "mutable", + "name": "what", + "nameLocation": "5176:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5162:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5162:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2332, + "mutability": "mutable", + "name": "args", + "nameLocation": "5195:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5182:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2331, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5182:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5161:39:2" + }, + "returnParameters": { + "id": 2336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2335, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5241:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5233:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5233:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5232:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2386, + "nodeType": "FunctionDefinition", + "src": "5603:406:2", + "body": { + "id": 2385, + "nodeType": "Block", + "src": "5693:316:2", + "statements": [ + { + "assignments": [ + 2368 + ], + "declarations": [ + { + "constant": false, + "id": 2368, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5716:8:2", + "nodeType": "VariableDeclaration", + "scope": 2385, + "src": "5703:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2367, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5703:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2373, + "initialValue": { + "arguments": [ + { + "id": 2371, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2362, + "src": "5738:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2369, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5727:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5727:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5727:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5703:40:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5805:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5819:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5834:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5841:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5851:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5837:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5837:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5864:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5858:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5858:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5827:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5827:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5819:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2365, + "isOffset": false, + "isSlot": false, + "src": "5819:4:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5841:8:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5864:8:2", + "valueSize": 1 + } + ], + "id": 2374, + "nodeType": "InlineAssembly", + "src": "5796:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2376, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2365, + "src": "5915:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5931:1:2", + "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": 2378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5923:7:2", + "typeDescriptions": {} + } + }, + "id": 2380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5923:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5915:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e67293a204465706c6f796d656e74206661696c65642e", + "id": 2382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5947:45:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + }, + "value": "Test deployCode(string): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + } + ], + "id": 2375, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5894:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5894:108:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2384, + "nodeType": "ExpressionStatement", + "src": "5894:108:2" + } + ] + }, + "functionSelector": "9a8325a0", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5612:10:2", + "parameters": { + "id": 2363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2362, + "mutability": "mutable", + "name": "what", + "nameLocation": "5637:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5623:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2361, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5623:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5622:20:2" + }, + "returnParameters": { + "id": 2366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2365, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5683:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5675:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2364, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5675:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5674:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2400, + "nodeType": "FunctionDefinition", + "src": "6229:118:2", + "body": { + "id": 2399, + "nodeType": "Block", + "src": "6279:68:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6311:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2393, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2388, + "src": "6320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2391, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6294:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6294:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2395, + "nodeType": "EmitStatement", + "src": "6289:35:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2396, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6334:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6334:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2398, + "nodeType": "ExpressionStatement", + "src": "6334:6:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fail", + "nameLocation": "6238:4:2", + "parameters": { + "id": 2389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2388, + "mutability": "mutable", + "name": "err", + "nameLocation": "6257:3:2", + "nodeType": "VariableDeclaration", + "scope": 2400, + "src": "6243:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2387, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6243:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6242:19:2" + }, + "returnParameters": { + "id": 2390, + "nodeType": "ParameterList", + "parameters": [], + "src": "6279:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2411, + "nodeType": "FunctionDefinition", + "src": "6353:83:2", + "body": { + "id": 2410, + "nodeType": "Block", + "src": "6402:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6423:5:2", + "subExpression": { + "id": 2406, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2402, + "src": "6424:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2405, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "6412:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 2408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6412:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2409, + "nodeType": "ExpressionStatement", + "src": "6412:17:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6362:11:2", + "parameters": { + "id": 2403, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2402, + "mutability": "mutable", + "name": "data", + "nameLocation": "6379:4:2", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "6374:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2401, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6374:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6373:11:2" + }, + "returnParameters": { + "id": 2404, + "nodeType": "ParameterList", + "parameters": [], + "src": "6402:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2425, + "nodeType": "FunctionDefinition", + "src": "6442:107:2", + "body": { + "id": 2424, + "nodeType": "Block", + "src": "6510:39:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6531:5:2", + "subExpression": { + "id": 2419, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "6532:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2421, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "6538:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2418, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 290, + "src": "6520:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory)" + } + }, + "id": 2422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6520:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2423, + "nodeType": "ExpressionStatement", + "src": "6520:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6451:11:2", + "parameters": { + "id": 2416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2413, + "mutability": "mutable", + "name": "data", + "nameLocation": "6468:4:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6463:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2412, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6463:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "err", + "nameLocation": "6488:3:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6474:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2414, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6474:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6462:30:2" + }, + "returnParameters": { + "id": 2417, + "nodeType": "ParameterList", + "parameters": [], + "src": "6510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2461, + "nodeType": "FunctionDefinition", + "src": "6555:326:2", + "body": { + "id": 2460, + "nodeType": "Block", + "src": "6598:283:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2432, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6612:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2433, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6617:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6612:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2459, + "nodeType": "IfStatement", + "src": "6608:267:2", + "trueBody": { + "id": 2458, + "nodeType": "Block", + "src": "6620:255:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6c5d", + "id": 2436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6659:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + }, + "value": "Error: a == b not satisfied [bool]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + } + ], + "id": 2435, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6639:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6639:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2438, + "nodeType": "EmitStatement", + "src": "6634:62:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6735:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "condition": { + "id": 2441, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6762:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6749:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6753:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2439, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6715:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6715:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2446, + "nodeType": "EmitStatement", + "src": "6710:60:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6809:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "condition": { + "id": 2449, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6823:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6836:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6823:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6827:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2447, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6789:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6789:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2454, + "nodeType": "EmitStatement", + "src": "6784:60:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2455, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6858:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6858:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2457, + "nodeType": "ExpressionStatement", + "src": "6858:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6564:8:2", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "mutability": "mutable", + "name": "a", + "nameLocation": "6578:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6573:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6573:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "mutability": "mutable", + "name": "b", + "nameLocation": "6586:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6581:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6581:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6572:16:2" + }, + "returnParameters": { + "id": 2431, + "nodeType": "ParameterList", + "parameters": [], + "src": "6598:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2486, + "nodeType": "FunctionDefinition", + "src": "6887:178:2", + "body": { + "id": 2485, + "nodeType": "Block", + "src": "6949:116:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2470, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "6963:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2471, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "6968:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6963:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2484, + "nodeType": "IfStatement", + "src": "6959:100:2", + "trueBody": { + "id": 2483, + "nodeType": "Block", + "src": "6971:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2475, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2467, + "src": "7016:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2473, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6990:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6990:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2477, + "nodeType": "EmitStatement", + "src": "6985:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2479, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "7043:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2480, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "7046:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2478, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2461, + "src": "7034:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 2481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7034:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2482, + "nodeType": "ExpressionStatement", + "src": "7034:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6896:8:2", + "parameters": { + "id": 2468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2463, + "mutability": "mutable", + "name": "a", + "nameLocation": "6910:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6905:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2462, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6905:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2465, + "mutability": "mutable", + "name": "b", + "nameLocation": "6918:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6913:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6913:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2467, + "mutability": "mutable", + "name": "err", + "nameLocation": "6935:3:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6921:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2466, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6921:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6904:35:2" + }, + "returnParameters": { + "id": 2469, + "nodeType": "ParameterList", + "parameters": [], + "src": "6949:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2499, + "nodeType": "FunctionDefinition", + "src": "7071:91:2", + "body": { + "id": 2498, + "nodeType": "Block", + "src": "7130:32:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2494, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2488, + "src": "7150:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2495, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2490, + "src": "7153:1:2", + "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" + } + ], + "id": 2493, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1758, + "src": "7140:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory)" + } + }, + "id": 2496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7140:15:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2497, + "nodeType": "ExpressionStatement", + "src": "7140:15:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7080:8:2", + "parameters": { + "id": 2491, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2488, + "mutability": "mutable", + "name": "a", + "nameLocation": "7102:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7089:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2487, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7089:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2490, + "mutability": "mutable", + "name": "b", + "nameLocation": "7118:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7105:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2489, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7105:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7088:32:2" + }, + "returnParameters": { + "id": 2492, + "nodeType": "ParameterList", + "parameters": [], + "src": "7130:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2515, + "nodeType": "FunctionDefinition", + "src": "7168:115:2", + "body": { + "id": 2514, + "nodeType": "Block", + "src": "7246:37:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2509, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2501, + "src": "7266:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2510, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "7269:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2511, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "7272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2508, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1785, + "src": "7256:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory,string memory)" + } + }, + "id": 2512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7256:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2513, + "nodeType": "ExpressionStatement", + "src": "7256:20:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7177:8:2", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2501, + "mutability": "mutable", + "name": "a", + "nameLocation": "7199:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7186:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2500, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7186:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2503, + "mutability": "mutable", + "name": "b", + "nameLocation": "7215:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7202:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7202:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "mutability": "mutable", + "name": "err", + "nameLocation": "7232:3:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7218:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7218:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7185:51:2" + }, + "returnParameters": { + "id": 2507, + "nodeType": "ParameterList", + "parameters": [], + "src": "7246:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2557, + "nodeType": "FunctionDefinition", + "src": "7289:336:2", + "body": { + "id": 2556, + "nodeType": "Block", + "src": "7356:269:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2527, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7391:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2525, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7380:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7380:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7380:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2524, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7370:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7370:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2533, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7419:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7408:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7408:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7408:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2530, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7398:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7398:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7370:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2555, + "nodeType": "IfStatement", + "src": "7366:253:2", + "trueBody": { + "id": 2554, + "nodeType": "Block", + "src": "7424:195:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745b5d5d", + "id": 2538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7447:38:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + }, + "value": "Error: a == b not satisfied [uint[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + } + ], + "id": 2537, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7443:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7443:43:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2540, + "nodeType": "EmitStatement", + "src": "7438:48:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7521:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2543, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7535:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2541, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7505:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7505:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2545, + "nodeType": "EmitStatement", + "src": "7500:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7572:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2548, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7586:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2546, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7556:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7556:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2550, + "nodeType": "EmitStatement", + "src": "7551:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2551, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7602:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7602:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2553, + "nodeType": "ExpressionStatement", + "src": "7602:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7298:8:2", + "parameters": { + "id": 2522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2518, + "mutability": "mutable", + "name": "a", + "nameLocation": "7324:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7307:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2516, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7307:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2517, + "nodeType": "ArrayTypeName", + "src": "7307:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2521, + "mutability": "mutable", + "name": "b", + "nameLocation": "7344:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7327:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7327:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2520, + "nodeType": "ArrayTypeName", + "src": "7327:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7306:40:2" + }, + "returnParameters": { + "id": 2523, + "nodeType": "ParameterList", + "parameters": [], + "src": "7356:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2599, + "nodeType": "FunctionDefinition", + "src": "7631:333:2", + "body": { + "id": 2598, + "nodeType": "Block", + "src": "7696:268:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2569, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7731:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2567, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7720:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7720:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7720:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2566, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7710:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7710:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2575, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7748:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7748:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7748:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2572, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7738:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7738:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7710:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2597, + "nodeType": "IfStatement", + "src": "7706:252:2", + "trueBody": { + "id": 2596, + "nodeType": "Block", + "src": "7764:194:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745b5d5d", + "id": 2580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7787:37:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + }, + "value": "Error: a == b not satisfied [int[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + } + ], + "id": 2579, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7783:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2582, + "nodeType": "EmitStatement", + "src": "7778:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7860:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2585, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7874:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2583, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7844:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7844:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2587, + "nodeType": "EmitStatement", + "src": "7839:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7911:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2590, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7925:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2588, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7895:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7895:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2592, + "nodeType": "EmitStatement", + "src": "7890:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2593, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7941:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7941:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2595, + "nodeType": "ExpressionStatement", + "src": "7941:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7640:8:2", + "parameters": { + "id": 2564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2560, + "mutability": "mutable", + "name": "a", + "nameLocation": "7665:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7649:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2558, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7649:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2559, + "nodeType": "ArrayTypeName", + "src": "7649:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2563, + "mutability": "mutable", + "name": "b", + "nameLocation": "7684:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7668:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2561, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7668:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2562, + "nodeType": "ArrayTypeName", + "src": "7668:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7648:38:2" + }, + "returnParameters": { + "id": 2565, + "nodeType": "ParameterList", + "parameters": [], + "src": "7696:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2641, + "nodeType": "FunctionDefinition", + "src": "7970:339:2", + "body": { + "id": 2640, + "nodeType": "Block", + "src": "8037:272:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2611, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8072:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8061:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8061:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2608, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8051:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8051:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2617, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8100:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2615, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8089:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8089:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2614, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8079:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8079:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8051:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2639, + "nodeType": "IfStatement", + "src": "8047:256:2", + "trueBody": { + "id": 2638, + "nodeType": "Block", + "src": "8105:198:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735b5d5d", + "id": 2622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8128:41:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + }, + "value": "Error: a == b not satisfied [address[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + } + ], + "id": 2621, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8124:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8124:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2624, + "nodeType": "EmitStatement", + "src": "8119:51:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8205:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2627, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2625, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8189:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8189:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2629, + "nodeType": "EmitStatement", + "src": "8184:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8256:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2632, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8270:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2630, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8240:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8240:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2634, + "nodeType": "EmitStatement", + "src": "8235:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2635, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "8286:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8286:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2637, + "nodeType": "ExpressionStatement", + "src": "8286:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7979:8:2", + "parameters": { + "id": 2606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2602, + "mutability": "mutable", + "name": "a", + "nameLocation": "8005:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "7988:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2600, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7988:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2601, + "nodeType": "ArrayTypeName", + "src": "7988:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2605, + "mutability": "mutable", + "name": "b", + "nameLocation": "8025:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "8008:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8008:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2604, + "nodeType": "ArrayTypeName", + "src": "8008:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "7987:40:2" + }, + "returnParameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [], + "src": "8037:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2678, + "nodeType": "FunctionDefinition", + "src": "8315:248:2", + "body": { + "id": 2677, + "nodeType": "Block", + "src": "8401:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2655, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8436:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8425:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8425:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8425:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2652, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8415:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8415:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2661, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8464:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8453:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8453:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8453:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2658, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8443:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8443:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8415:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2676, + "nodeType": "IfStatement", + "src": "8411:146:2", + "trueBody": { + "id": 2675, + "nodeType": "Block", + "src": "8469:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2667, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2649, + "src": "8514:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2665, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8488:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8488:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2669, + "nodeType": "EmitStatement", + "src": "8483:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2671, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 2672, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8544:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2670, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2557, + "src": "8532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (uint256[] memory,uint256[] memory)" + } + }, + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8532:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2674, + "nodeType": "ExpressionStatement", + "src": "8532:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8324:8:2", + "parameters": { + "id": 2650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2644, + "mutability": "mutable", + "name": "a", + "nameLocation": "8350:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8333:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8333:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2643, + "nodeType": "ArrayTypeName", + "src": "8333:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2647, + "mutability": "mutable", + "name": "b", + "nameLocation": "8370:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8353:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8353:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2646, + "nodeType": "ArrayTypeName", + "src": "8353:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2649, + "mutability": "mutable", + "name": "err", + "nameLocation": "8387:3:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8373:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2648, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8373:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8332:59:2" + }, + "returnParameters": { + "id": 2651, + "nodeType": "ParameterList", + "parameters": [], + "src": "8401:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2715, + "nodeType": "FunctionDefinition", + "src": "8569:246:2", + "body": { + "id": 2714, + "nodeType": "Block", + "src": "8653:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2692, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8688:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2690, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8677:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8677:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8677:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2689, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8667:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8667:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2698, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8716:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8705:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8705:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8705:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8695:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8695:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8667:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2713, + "nodeType": "IfStatement", + "src": "8663:146:2", + "trueBody": { + "id": 2712, + "nodeType": "Block", + "src": "8721:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8757:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2704, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2686, + "src": "8766:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2702, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8740:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8740:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2706, + "nodeType": "EmitStatement", + "src": "8735:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2708, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8793:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + { + "id": 2709, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8796:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2707, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2599, + "src": "8784:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_int256_$dyn_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (int256[] memory,int256[] memory)" + } + }, + "id": 2710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8784:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2711, + "nodeType": "ExpressionStatement", + "src": "8784:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8578:8:2", + "parameters": { + "id": 2687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2681, + "mutability": "mutable", + "name": "a", + "nameLocation": "8603:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8587:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2679, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8587:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2680, + "nodeType": "ArrayTypeName", + "src": "8587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2684, + "mutability": "mutable", + "name": "b", + "nameLocation": "8622:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8606:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2682, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8606:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2683, + "nodeType": "ArrayTypeName", + "src": "8606:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2686, + "mutability": "mutable", + "name": "err", + "nameLocation": "8639:3:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8625:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2685, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8625:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8586:57:2" + }, + "returnParameters": { + "id": 2688, + "nodeType": "ParameterList", + "parameters": [], + "src": "8653:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2752, + "nodeType": "FunctionDefinition", + "src": "8822:248:2", + "body": { + "id": 2751, + "nodeType": "Block", + "src": "8908:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2729, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "8943:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8932:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8932:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8932:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2726, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8922:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8922:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2735, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "8971:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8960:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8960:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8960:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2732, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8950:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8950:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8922:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2750, + "nodeType": "IfStatement", + "src": "8918:146:2", + "trueBody": { + "id": 2749, + "nodeType": "Block", + "src": "8976:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9012:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2741, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2723, + "src": "9021:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2739, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8995:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8995:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2743, + "nodeType": "EmitStatement", + "src": "8990:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2745, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "9048:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "id": 2746, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "9051:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2744, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2641, + "src": "9039:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address[] memory,address[] memory)" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9039:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2748, + "nodeType": "ExpressionStatement", + "src": "9039:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8831:8:2", + "parameters": { + "id": 2724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2718, + "mutability": "mutable", + "name": "a", + "nameLocation": "8857:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8840:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8840:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2717, + "nodeType": "ArrayTypeName", + "src": "8840:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2721, + "mutability": "mutable", + "name": "b", + "nameLocation": "8877:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8860:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8860:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2720, + "nodeType": "ArrayTypeName", + "src": "8860:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2723, + "mutability": "mutable", + "name": "err", + "nameLocation": "8894:3:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8880:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2722, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8880:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8839:59:2" + }, + "returnParameters": { + "id": 2725, + "nodeType": "ParameterList", + "parameters": [], + "src": "8908:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2802, + "nodeType": "FunctionDefinition", + "src": "9076:516:2", + "body": { + "id": 2801, + "nodeType": "Block", + "src": "9190:402:2", + "statements": [ + { + "assignments": [ + 2762 + ], + "declarations": [ + { + "constant": false, + "id": 2762, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9208:5:2", + "nodeType": "VariableDeclaration", + "scope": 2801, + "src": "9200:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2768, + "initialValue": { + "arguments": [ + { + "id": 2765, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9230:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2766, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9233:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2763, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9216:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9216:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9216:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9200:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2769, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9250:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2770, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9250:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2800, + "nodeType": "IfStatement", + "src": "9246:340:2", + "trueBody": { + "id": 2799, + "nodeType": "Block", + "src": "9268:318:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9303:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2772, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9287:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9287:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2775, + "nodeType": "EmitStatement", + "src": "9282:58:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2777, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9375:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2778, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9389:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2776, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9359:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9359:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2780, + "nodeType": "EmitStatement", + "src": "9354:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9426:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2783, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2781, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9410:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9410:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2785, + "nodeType": "EmitStatement", + "src": "9405:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9477:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2788, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9491:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2786, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9461:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9461:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2790, + "nodeType": "EmitStatement", + "src": "9456:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9535:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2793, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9549:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2791, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9519:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9519:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "9514:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2796, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "9569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9569:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2798, + "nodeType": "ExpressionStatement", + "src": "9569:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9085:17:2", + "parameters": { + "id": 2759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2754, + "mutability": "mutable", + "name": "a", + "nameLocation": "9120:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9112:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2753, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9112:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2756, + "mutability": "mutable", + "name": "b", + "nameLocation": "9139:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9131:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2755, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9131:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2758, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9158:8:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9150:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2757, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9150:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9102:70:2" + }, + "returnParameters": { + "id": 2760, + "nodeType": "ParameterList", + "parameters": [], + "src": "9190:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2838, + "nodeType": "FunctionDefinition", + "src": "9598:335:2", + "body": { + "id": 2837, + "nodeType": "Block", + "src": "9739:194:2", + "statements": [ + { + "assignments": [ + 2814 + ], + "declarations": [ + { + "constant": false, + "id": 2814, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9757:5:2", + "nodeType": "VariableDeclaration", + "scope": 2837, + "src": "9749:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2813, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9749:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2820, + "initialValue": { + "arguments": [ + { + "id": 2817, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9779:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2818, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9782:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2815, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9765:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9765:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9765:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9749:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2821, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2814, + "src": "9799:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2822, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9807:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9799:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2836, + "nodeType": "IfStatement", + "src": "9795:132:2", + "trueBody": { + "id": 2835, + "nodeType": "Block", + "src": "9817:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9856:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2826, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "9865:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2824, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9836:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9836:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2828, + "nodeType": "EmitStatement", + "src": "9831:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2830, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9901:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2831, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9904:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2832, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9907:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2829, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2802, + "src": "9883:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 2833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9883:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2834, + "nodeType": "ExpressionStatement", + "src": "9883:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9607:17:2", + "parameters": { + "id": 2811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2804, + "mutability": "mutable", + "name": "a", + "nameLocation": "9642:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9634:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9634:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2806, + "mutability": "mutable", + "name": "b", + "nameLocation": "9661:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9653:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9653:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2808, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9680:8:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9672:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9672:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2810, + "mutability": "mutable", + "name": "err", + "nameLocation": "9712:3:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9698:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9698:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9624:97:2" + }, + "returnParameters": { + "id": 2812, + "nodeType": "ParameterList", + "parameters": [], + "src": "9739:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2888, + "nodeType": "FunctionDefinition", + "src": "9939:513:2", + "body": { + "id": 2887, + "nodeType": "Block", + "src": "10051:401:2", + "statements": [ + { + "assignments": [ + 2848 + ], + "declarations": [ + { + "constant": false, + "id": 2848, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10069:5:2", + "nodeType": "VariableDeclaration", + "scope": 2887, + "src": "10061:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10061:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2854, + "initialValue": { + "arguments": [ + { + "id": 2851, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10091:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2852, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10094:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2849, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10077:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10077:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10061:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2855, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10111:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2856, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10119:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10111:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2886, + "nodeType": "IfStatement", + "src": "10107:339:2", + "trueBody": { + "id": 2885, + "nodeType": "Block", + "src": "10129:317:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 2859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10164:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 2858, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10148:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10148:52:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2861, + "nodeType": "EmitStatement", + "src": "10143:57:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10235:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10249:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2862, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10219:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10219:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2866, + "nodeType": "EmitStatement", + "src": "10214:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10286:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2869, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10300:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2867, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10270:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10270:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2871, + "nodeType": "EmitStatement", + "src": "10265:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10337:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2874, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10351:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2872, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10321:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10321:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2876, + "nodeType": "EmitStatement", + "src": "10316:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10395:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2879, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10409:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2877, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10379:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10379:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2881, + "nodeType": "EmitStatement", + "src": "10374:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2882, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "10429:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10429:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2884, + "nodeType": "ExpressionStatement", + "src": "10429:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9948:17:2", + "parameters": { + "id": 2845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2840, + "mutability": "mutable", + "name": "a", + "nameLocation": "9982:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9975:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2839, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9975:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2842, + "mutability": "mutable", + "name": "b", + "nameLocation": "10000:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9993:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2841, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9993:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2844, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10019:8:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "10011:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2843, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9965:68:2" + }, + "returnParameters": { + "id": 2846, + "nodeType": "ParameterList", + "parameters": [], + "src": "10051:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2924, + "nodeType": "FunctionDefinition", + "src": "10458:333:2", + "body": { + "id": 2923, + "nodeType": "Block", + "src": "10597:194:2", + "statements": [ + { + "assignments": [ + 2900 + ], + "declarations": [ + { + "constant": false, + "id": 2900, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10615:5:2", + "nodeType": "VariableDeclaration", + "scope": 2923, + "src": "10607:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10607:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2906, + "initialValue": { + "arguments": [ + { + "id": 2903, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10637:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2904, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10640:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2901, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10623:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10623:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10623:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10607:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2907, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2900, + "src": "10657:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2908, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10665:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2922, + "nodeType": "IfStatement", + "src": "10653:132:2", + "trueBody": { + "id": 2921, + "nodeType": "Block", + "src": "10675:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10714:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2912, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2896, + "src": "10723:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2910, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10694:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10694:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2914, + "nodeType": "EmitStatement", + "src": "10689:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2916, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2917, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10762:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2918, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10765:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2915, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2888, + "src": "10741:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10741:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "10741:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "10467:17:2", + "parameters": { + "id": 2897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2890, + "mutability": "mutable", + "name": "a", + "nameLocation": "10501:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10494:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2889, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10494:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "b", + "nameLocation": "10519:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10512:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2891, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10512:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2894, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10538:8:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10530:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2893, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10530:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2896, + "mutability": "mutable", + "name": "err", + "nameLocation": "10570:3:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10556:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10556:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10484:95:2" + }, + "returnParameters": { + "id": 2898, + "nodeType": "ParameterList", + "parameters": [], + "src": "10597:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2985, + "nodeType": "FunctionDefinition", + "src": "10797:766:2", + "body": { + "id": 2984, + "nodeType": "Block", + "src": "10974:589:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2933, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "10988:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "10988:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2941, + "nodeType": "IfStatement", + "src": "10984:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 2937, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11012:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2938, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11015:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2936, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11003:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 2939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11003:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2932, + "id": 2940, + "nodeType": "Return", + "src": "10996:21:2" + } + }, + { + "assignments": [ + 2943 + ], + "declarations": [ + { + "constant": false, + "id": 2943, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11081:12:2", + "nodeType": "VariableDeclaration", + "scope": 2984, + "src": "11073:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2942, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11073:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2949, + "initialValue": { + "arguments": [ + { + "id": 2946, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11117:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2947, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11120:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2944, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11096:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11096:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11096:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11073:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2950, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11137:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2951, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11152:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11137:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2983, + "nodeType": "IfStatement", + "src": "11133:424:2", + "trueBody": { + "id": 2982, + "nodeType": "Block", + "src": "11169:388:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11212:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2953, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11188:61:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2956, + "nodeType": "EmitStatement", + "src": "11183:66:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 2958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11292:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2959, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11308:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2957, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11268:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11268:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2961, + "nodeType": "EmitStatement", + "src": "11263:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 2963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11353:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2964, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11369:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2962, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11329:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11329:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2966, + "nodeType": "EmitStatement", + "src": "11324:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 2968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11414:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 2969, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11430:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11447:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2967, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11390:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11390:60:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2972, + "nodeType": "EmitStatement", + "src": "11385:65:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11493:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 2975, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11509:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11523:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2973, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11469:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11469:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "EmitStatement", + "src": "11464:62:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2979, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "11540:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11540:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2981, + "nodeType": "ExpressionStatement", + "src": "11540:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "10806:17:2", + "parameters": { + "id": 2931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2926, + "mutability": "mutable", + "name": "a", + "nameLocation": "10841:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10833:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2925, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10833:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2928, + "mutability": "mutable", + "name": "b", + "nameLocation": "10860:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10852:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10852:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2930, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "10879:15:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10871:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2929, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10871:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10823:133:2" + }, + "returnParameters": { + "id": 2932, + "nodeType": "ParameterList", + "parameters": [], + "src": "10974:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3030, + "nodeType": "FunctionDefinition", + "src": "11569:526:2", + "body": { + "id": 3029, + "nodeType": "Block", + "src": "11773:322:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2996, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11792:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11787:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3004, + "nodeType": "IfStatement", + "src": "11783:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3000, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11811:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3001, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11814:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2999, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11802:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 3002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11802:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2995, + "id": 3003, + "nodeType": "Return", + "src": "11795:21:2" + } + }, + { + "assignments": [ + 3006 + ], + "declarations": [ + { + "constant": false, + "id": 3006, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11880:12:2", + "nodeType": "VariableDeclaration", + "scope": 3029, + "src": "11872:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3005, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3012, + "initialValue": { + "arguments": [ + { + "id": 3009, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11916:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3010, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11919:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3007, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11895:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11895:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11895:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11872:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3013, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3006, + "src": "11936:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3014, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "11951:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11936:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3028, + "nodeType": "IfStatement", + "src": "11932:157:2", + "trueBody": { + "id": 3027, + "nodeType": "Block", + "src": "11968:121:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3018, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2993, + "src": "12020:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3016, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11987:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11987:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3020, + "nodeType": "EmitStatement", + "src": "11982:42:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3022, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "12056:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3023, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "12059:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3024, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "12062:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3021, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 2985, + "src": "12038:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 3025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12038:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3026, + "nodeType": "ExpressionStatement", + "src": "12038:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "11578:17:2", + "parameters": { + "id": 2994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2987, + "mutability": "mutable", + "name": "a", + "nameLocation": "11613:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11605:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11605:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2989, + "mutability": "mutable", + "name": "b", + "nameLocation": "11632:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11624:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2988, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11624:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2991, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "11651:15:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11643:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2990, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11643:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2993, + "mutability": "mutable", + "name": "err", + "nameLocation": "11746:3:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11732:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2992, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11732:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11595:160:2" + }, + "returnParameters": { + "id": 2995, + "nodeType": "ParameterList", + "parameters": [], + "src": "11773:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3091, + "nodeType": "FunctionDefinition", + "src": "12101:702:2", + "body": { + "id": 3090, + "nodeType": "Block", + "src": "12220:583:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3039, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12234:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12234:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3047, + "nodeType": "IfStatement", + "src": "12230:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3043, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12258:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3044, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12261:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3042, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12249:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12249:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3038, + "id": 3046, + "nodeType": "Return", + "src": "12242:21:2" + } + }, + { + "assignments": [ + 3049 + ], + "declarations": [ + { + "constant": false, + "id": 3049, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "12327:12:2", + "nodeType": "VariableDeclaration", + "scope": 3090, + "src": "12319:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12319:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3055, + "initialValue": { + "arguments": [ + { + "id": 3052, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12363:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3053, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12366:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3050, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "12342:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "12342:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12342:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12319:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3056, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12383:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3057, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12398:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12383:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3089, + "nodeType": "IfStatement", + "src": "12379:418:2", + "trueBody": { + "id": 3088, + "nodeType": "Block", + "src": "12415:382:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 3060, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12457:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 3059, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12434:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 3061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12434:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3062, + "nodeType": "EmitStatement", + "src": "12429:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 3064, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12535:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 3065, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12551:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3063, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12512:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12512:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3067, + "nodeType": "EmitStatement", + "src": "12507:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 3069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12595:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 3070, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12611:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3068, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12572:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12572:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3072, + "nodeType": "EmitStatement", + "src": "12567:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 3074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12655:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 3075, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12671:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12688:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3073, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12632:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12632:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3078, + "nodeType": "EmitStatement", + "src": "12627:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 3080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12733:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 3081, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12749:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3079, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12710:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12710:56:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3084, + "nodeType": "EmitStatement", + "src": "12705:61:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 3085, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "12780:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 3086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12780:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3087, + "nodeType": "ExpressionStatement", + "src": "12780:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12110:17:2", + "parameters": { + "id": 3037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3032, + "mutability": "mutable", + "name": "a", + "nameLocation": "12144:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12137:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3031, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12137:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3034, + "mutability": "mutable", + "name": "b", + "nameLocation": "12162:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12155:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3033, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12155:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3036, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12181:15:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12173:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3035, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12173:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12127:75:2" + }, + "returnParameters": { + "id": 3038, + "nodeType": "ParameterList", + "parameters": [], + "src": "12220:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3136, + "nodeType": "FunctionDefinition", + "src": "12809:467:2", + "body": { + "id": 3135, + "nodeType": "Block", + "src": "12955:321:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3102, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12969:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12974:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12969:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3110, + "nodeType": "IfStatement", + "src": "12965:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3106, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "12993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3107, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12996:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3105, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12984:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12984:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3101, + "id": 3109, + "nodeType": "Return", + "src": "12977:21:2" + } + }, + { + "assignments": [ + 3112 + ], + "declarations": [ + { + "constant": false, + "id": 3112, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "13062:12:2", + "nodeType": "VariableDeclaration", + "scope": 3135, + "src": "13054:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13054:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3118, + "initialValue": { + "arguments": [ + { + "id": 3115, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13098:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3116, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13101:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3113, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "13077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "13077:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13077:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13054:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3119, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "13118:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3120, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13133:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13118:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3134, + "nodeType": "IfStatement", + "src": "13114:156:2", + "trueBody": { + "id": 3133, + "nodeType": "Block", + "src": "13150:120:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13192:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3124, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3099, + "src": "13201:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3122, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13169:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13169:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3126, + "nodeType": "EmitStatement", + "src": "13164:41:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3128, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13237:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3129, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13240:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3130, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13243:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3127, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 3091, + "src": "13219:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 3131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13219:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3132, + "nodeType": "ExpressionStatement", + "src": "13219:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12818:17:2", + "parameters": { + "id": 3100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3093, + "mutability": "mutable", + "name": "a", + "nameLocation": "12852:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12845:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3092, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12845:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "mutability": "mutable", + "name": "b", + "nameLocation": "12870:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12863:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3094, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12863:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3097, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12889:15:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12881:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3096, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12881:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3099, + "mutability": "mutable", + "name": "err", + "nameLocation": "12928:3:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12914:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3098, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12914:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12835:102:2" + }, + "returnParameters": { + "id": 3101, + "nodeType": "ParameterList", + "parameters": [], + "src": "12955:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 1823, + "name": "DSTest", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1786, + "src": "196:6:2" + }, + "id": 1824, + "nodeType": "InheritanceSpecifier", + "src": "196:6:2" + }, + { + "baseName": { + "id": 1825, + "name": "Script", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1818, + "src": "204:6:2" + }, + "id": 1826, + "nodeType": "InheritanceSpecifier", + "src": "204:6:2" + } + ], + "canonicalName": "Test", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3137, + 1818, + 1786 + ], + "name": "Test", + "nameLocation": "188:4:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3207, + "nodeType": "ContractDefinition", + "src": "13478:984:2", + "nodes": [ + { + "id": 3144, + "nodeType": "VariableDeclaration", + "src": "13501:86:2", + "constant": true, + "functionSelector": "10332977", + "mutability": "constant", + "name": "assertionError", + "nameLocation": "13523:14:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3138, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13501:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13564:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783031", + "id": 3142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13582:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "expression": { + "id": 3139, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13540:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13540:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3151, + "nodeType": "VariableDeclaration", + "src": "13593:87:2", + "constant": true, + "functionSelector": "8995290f", + "mutability": "constant", + "name": "arithmeticError", + "nameLocation": "13615:15:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3145, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13593:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783131", + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13675:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "0x11" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + } + ], + "expression": { + "id": 3146, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13633:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13633:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13633:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3158, + "nodeType": "VariableDeclaration", + "src": "13686:85:2", + "constant": true, + "functionSelector": "fa784a44", + "mutability": "constant", + "name": "divisionError", + "nameLocation": "13708:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3152, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13686:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13748:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783132", + "id": 3156, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13766:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "0x12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "expression": { + "id": 3153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13724:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13724:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13724:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3165, + "nodeType": "VariableDeclaration", + "src": "13777:91:2", + "constant": true, + "functionSelector": "1de45560", + "mutability": "constant", + "name": "enumConversionError", + "nameLocation": "13799:19:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3159, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13845:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783231", + "id": 3163, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13863:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + }, + "value": "0x21" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + } + ], + "expression": { + "id": 3160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13821:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13821:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3164, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13821:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3172, + "nodeType": "VariableDeclaration", + "src": "13874:90:2", + "constant": true, + "functionSelector": "d160e4de", + "mutability": "constant", + "name": "encodeStorageError", + "nameLocation": "13896:18:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3166, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13874:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13941:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783232", + "id": 3170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + }, + "value": "0x22" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + } + ], + "expression": { + "id": 3167, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13917:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13917:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13917:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3179, + "nodeType": "VariableDeclaration", + "src": "13970:80:2", + "constant": true, + "functionSelector": "b22dc54d", + "mutability": "constant", + "name": "popError", + "nameLocation": "13992:8:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3173, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13970:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14027:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783331", + "id": 3177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14045:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + }, + "value": "0x31" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + } + ], + "expression": { + "id": 3174, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14003:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14003:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14003:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3186, + "nodeType": "VariableDeclaration", + "src": "14056:85:2", + "constant": true, + "functionSelector": "05ee8612", + "mutability": "constant", + "name": "indexOOBError", + "nameLocation": "14078:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14056:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14118:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783332", + "id": 3184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14136:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "0x32" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + } + ], + "expression": { + "id": 3181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14094:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14094:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14094:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3193, + "nodeType": "VariableDeclaration", + "src": "14147:88:2", + "constant": true, + "functionSelector": "986c5f68", + "mutability": "constant", + "name": "memOverflowError", + "nameLocation": "14169:16:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3187, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14147:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14212:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783431", + "id": 3191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14230:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + }, + "value": "0x41" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + } + ], + "expression": { + "id": 3188, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14188:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14188:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3200, + "nodeType": "VariableDeclaration", + "src": "14241:84:2", + "constant": true, + "functionSelector": "b67689da", + "mutability": "constant", + "name": "zeroVarError", + "nameLocation": "14263:12:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3194, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14241:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14302:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783531", + "id": 3198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14320:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + }, + "value": "0x51" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + } + ], + "expression": { + "id": 3195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14278:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14278:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14278:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3206, + "nodeType": "VariableDeclaration", + "src": "14404:47:2", + "constant": true, + "functionSelector": "ac3d92c6", + "mutability": "constant", + "name": "lowLevelError", + "nameLocation": "14426:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3201, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14404:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "", + "id": 3204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14448:2:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14442:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3202, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14442:5:2", + "typeDescriptions": {} + } + }, + "id": 3205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14442:9:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdError", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3207 + ], + "name": "stdError", + "nameLocation": "13486:8:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3235, + "nodeType": "StructDefinition", + "src": "14663:275:2", + "canonicalName": "StdStorage", + "members": [ + { + "constant": false, + "id": 3215, + "mutability": "mutable", + "name": "slots", + "nameLocation": "14755:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14687:73:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "typeName": { + "id": 3214, + "keyType": { + "id": 3208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14696:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14687:67:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "valueType": { + "id": 3213, + "keyType": { + "id": 3209, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14715:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14707:46:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + }, + "valueType": { + "id": 3212, + "keyType": { + "id": 3210, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14733:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14725:27:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 3211, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14744:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3223, + "mutability": "mutable", + "name": "finds", + "nameLocation": "14832:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14766:71:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "typeName": { + "id": 3222, + "keyType": { + "id": 3216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14775:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14766:65:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "valueType": { + "id": 3221, + "keyType": { + "id": 3217, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14794:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14786:44:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 3220, + "keyType": { + "id": 3218, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14813:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14805:24:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 3219, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14824:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3226, + "mutability": "mutable", + "name": "_keys", + "nameLocation": "14854:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14844:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3224, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14844:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3225, + "nodeType": "ArrayTypeName", + "src": "14844:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3228, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "14872:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14865:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3227, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14865:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3230, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "14890:6:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14882:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14882:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3232, + "mutability": "mutable", + "name": "_target", + "nameLocation": "14910:7:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14902:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14902:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3234, + "mutability": "mutable", + "name": "_set", + "nameLocation": "14931:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14923:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3233, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "StdStorage", + "nameLocation": "14670:10:2", + "scope": 4485, + "visibility": "public" + }, + { + "id": 4337, + "nodeType": "ContractDefinition", + "src": "14940:8872:2", + "nodes": [ + { + "id": 3245, + "nodeType": "EventDefinition", + "src": "14965:71:2", + "anonymous": false, + "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", + "name": "SlotFound", + "nameLocation": "14971:9:2", + "parameters": { + "id": 3244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3237, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "14989:3:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14981:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14981:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3239, + "indexed": false, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "15001:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14994:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3238, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14994:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3241, + "indexed": false, + "mutability": "mutable", + "name": "keysHash", + "nameLocation": "15015:8:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15007:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3240, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3243, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15030:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15025:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15025:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14980:55:2" + } + }, + { + "id": 3251, + "nodeType": "EventDefinition", + "src": "15041:51:2", + "anonymous": false, + "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", + "name": "WARNING_UninitedSlot", + "nameLocation": "15047:20:2", + "parameters": { + "id": 3250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3247, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "15076:3:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15068:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15068:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3249, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15086:4:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15081:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3248, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15067:24:2" + } + }, + { + "id": 3254, + "nodeType": "VariableDeclaration", + "src": "15098:117:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "15123:11:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15098:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 3253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15137:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "private" + }, + { + "id": 3257, + "nodeType": "VariableDeclaration", + "src": "15221:114:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MAX", + "nameLocation": "15245:10:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3255, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15221:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393637", + "id": 3256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15258:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819967_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9967" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819967" + }, + "visibility": "private" + }, + { + "id": 3274, + "nodeType": "VariableDeclaration", + "src": "15342:94:2", + "constant": true, + "mutability": "constant", + "name": "vm_std_store", + "nameLocation": "15362:12:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + }, + "typeName": { + "id": 3259, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3258, + "name": "Vm", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4964, + "src": "15342:2:2" + }, + "referencedDeclaration": 4964, + "src": "15342:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 3268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15414:17:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 3267, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15404:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15404:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15396:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15396:7:2", + "typeDescriptions": {} + } + }, + "id": 3270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15396:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15388:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3263, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "15388:7:2", + "typeDescriptions": {} + } + }, + "id": 3271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15388:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15380:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3261, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15380:7:2", + "typeDescriptions": {} + } + }, + "id": 3272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15380:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3260, + "name": "Vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4964, + "src": "15377:2:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Vm_$4964_$", + "typeString": "type(contract Vm)" + } + }, + "id": 3273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15377:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "visibility": "private" + }, + { + "id": 3292, + "nodeType": "FunctionDefinition", + "src": "15443:165:2", + "body": { + "id": 3291, + "nodeType": "Block", + "src": "15552:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3286, + "name": "sigStr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3276, + "src": "15592:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15586:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15586:5:2", + "typeDescriptions": {} + } + }, + "id": 3287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15586:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3283, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15576:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15576:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15569:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3281, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15569:6:2", + "typeDescriptions": {} + } + }, + "id": 3289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15569:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "functionReturnParameters": 3280, + "id": 3290, + "nodeType": "Return", + "src": "15562:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sigs", + "nameLocation": "15452:4:2", + "parameters": { + "id": 3277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3276, + "mutability": "mutable", + "name": "sigStr", + "nameLocation": "15480:6:2", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15466:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3275, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15466:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15456:36:2" + }, + "returnParameters": { + "id": 3280, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3279, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15540:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3278, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "15539:8:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3737, + "nodeType": "FunctionDefinition", + "src": "16122:3214:2", + "body": { + "id": 3736, + "nodeType": "Block", + "src": "16222:3114:2", + "statements": [ + { + "assignments": [ + 3302 + ], + "declarations": [ + { + "constant": false, + "id": 3302, + "mutability": "mutable", + "name": "who", + "nameLocation": "16240:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16232:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3301, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16232:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3305, + "initialValue": { + "expression": { + "id": 3303, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16246:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3304, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "16246:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16232:26:2" + }, + { + "assignments": [ + 3307 + ], + "declarations": [ + { + "constant": false, + "id": 3307, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "16275:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16268:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3306, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16268:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3310, + "initialValue": { + "expression": { + "id": 3308, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16282:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3309, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "16282:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16268:23:2" + }, + { + "assignments": [ + 3312 + ], + "declarations": [ + { + "constant": false, + "id": 3312, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "16309:11:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16301:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3311, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3315, + "initialValue": { + "expression": { + "id": 3313, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16323:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3314, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "16323:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16301:33:2" + }, + { + "assignments": [ + 3320 + ], + "declarations": [ + { + "constant": false, + "id": 3320, + "mutability": "mutable", + "name": "ins", + "nameLocation": "16361:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16344:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16344:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3319, + "nodeType": "ArrayTypeName", + "src": "16344:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3323, + "initialValue": { + "expression": { + "id": 3321, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16367:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "16367:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16344:33:2" + }, + { + "condition": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3324, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3325, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "16428:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3327, + "indexExpression": { + "id": 3326, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16439:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3329, + "indexExpression": { + "id": 3328, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16444:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3337, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3333, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16477:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3334, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16482:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16460:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16460:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16460:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3330, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16450:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16450:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3354, + "nodeType": "IfStatement", + "src": "16424:174:2", + "trueBody": { + "id": 3353, + "nodeType": "Block", + "src": "16498:100:2", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3338, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16519:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3339, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "16519:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3341, + "indexExpression": { + "id": 3340, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16530:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3343, + "indexExpression": { + "id": 3342, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16535:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3351, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3347, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16568:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3348, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16573:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3345, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16551:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16551:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16551:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3344, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16541:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16541:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3352, + "nodeType": "Return", + "src": "16512:75:2" + } + ] + } + }, + { + "assignments": [ + 3356 + ], + "declarations": [ + { + "constant": false, + "id": 3356, + "mutability": "mutable", + "name": "cald", + "nameLocation": "16620:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16607:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3355, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16607:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3364, + "initialValue": { + "arguments": [ + { + "id": 3359, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16644:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3361, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16658:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3360, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "16650:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16650:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3357, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16627:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16627:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16607:56:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3365, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16673:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "record", + "nodeType": "MemberAccess", + "referencedDeclaration": 4756, + "src": "16673:19:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 3368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16673:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3369, + "nodeType": "ExpressionStatement", + "src": "16673:21:2" + }, + { + "assignments": [ + 3371 + ], + "declarations": [ + { + "constant": false, + "id": 3371, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "16712:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16704:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3370, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16704:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3372, + "nodeType": "VariableDeclarationStatement", + "src": "16704:12:2" + }, + { + "id": 3389, + "nodeType": "Block", + "src": "16726:126:2", + "statements": [ + { + "assignments": [ + null, + 3374 + ], + "declarations": [ + null, + { + "constant": false, + "id": 3374, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "16756:4:2", + "nodeType": "VariableDeclaration", + "scope": 3389, + "src": "16743:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3373, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16743:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3379, + "initialValue": { + "arguments": [ + { + "id": 3377, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "16779:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3375, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16764:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "16764:14:2", + "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": 3378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16764:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16740:44:2" + }, + { + "expression": { + "id": 3387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3380, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "16798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3382, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3374, + "src": "16820:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16826:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3384, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16829:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16826:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3381, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "16805:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16805:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "16798:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3388, + "nodeType": "ExpressionStatement", + "src": "16798:43:2" + } + ] + }, + { + "assignments": [ + 3394, + null + ], + "declarations": [ + { + "constant": false, + "id": 3394, + "mutability": "mutable", + "name": "reads", + "nameLocation": "16880:5:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16863:22:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3392, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3393, + "nodeType": "ArrayTypeName", + "src": "16863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + null + ], + "id": 3402, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 3399, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16921:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16913:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16913:7:2", + "typeDescriptions": {} + } + }, + "id": 3400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16913:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 3395, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16891:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "accesses", + "nodeType": "MemberAccess", + "referencedDeclaration": 4767, + "src": "16891:21:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (address) external returns (bytes32[] memory,bytes32[] memory)" + } + }, + "id": 3401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16891:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32[] memory,bytes32[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16862:64:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3403, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "16940:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16940:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 3405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16956:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "16940:17:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3505, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17649:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17649:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "31", + "id": 3507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17664:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17649:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3684, + "nodeType": "Block", + "src": "18887:107:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18909:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a204e6f2073746f726167652075736520646574656374656420666f72207461726765742e", + "id": 3681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18916:66:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + }, + "value": "stdStorage find(StdStorage): No storage use detected for target." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + } + ], + "id": 3679, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18901:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18901:82:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3683, + "nodeType": "ExpressionStatement", + "src": "18901:82:2" + } + ] + }, + "id": 3685, + "nodeType": "IfStatement", + "src": "17645:1349:2", + "trueBody": { + "id": 3678, + "nodeType": "Block", + "src": "17667:1214:2", + "statements": [ + { + "body": { + "id": 3676, + "nodeType": "Block", + "src": "17724:1147:2", + "statements": [ + { + "assignments": [ + 3521 + ], + "declarations": [ + { + "constant": false, + "id": 3521, + "mutability": "mutable", + "name": "prev", + "nameLocation": "17750:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "17742:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3520, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17742:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3529, + "initialValue": { + "arguments": [ + { + "id": 3524, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17775:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3525, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17780:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3527, + "indexExpression": { + "id": 3526, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17786:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17780:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3522, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17757:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "17757:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17757:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17742:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3530, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "17811:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17827:1:2", + "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": 3532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17819:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3531, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17819:7:2", + "typeDescriptions": {} + } + }, + "id": 3534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17819:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17811:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3547, + "nodeType": "IfStatement", + "src": "17807:114:2", + "trueBody": { + "id": 3546, + "nodeType": "Block", + "src": "17831:90:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3537, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17879:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3540, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17892:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3542, + "indexExpression": { + "id": 3541, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17898:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17892:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17884:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3538, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17884:7:2", + "typeDescriptions": {} + } + }, + "id": 3543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17884:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3536, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17858:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17858:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3545, + "nodeType": "EmitStatement", + "src": "17853:49:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3551, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17982:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3552, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17987:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3554, + "indexExpression": { + "id": 3553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17987:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "1337", + "id": 3557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18005:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17997:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3555, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17997:7:2", + "typeDescriptions": {} + } + }, + "id": 3558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17997:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3548, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17963:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "17963:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17963:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3560, + "nodeType": "ExpressionStatement", + "src": "17963:53:2" + }, + { + "assignments": [ + 3562 + ], + "declarations": [ + { + "constant": false, + "id": 3562, + "mutability": "mutable", + "name": "success", + "nameLocation": "18039:7:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18034:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3561, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18034:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 3563, + "nodeType": "VariableDeclarationStatement", + "src": "18034:12:2" + }, + { + "assignments": [ + 3565 + ], + "declarations": [ + { + "constant": false, + "id": 3565, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "18077:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18064:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3564, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18064:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3566, + "nodeType": "VariableDeclarationStatement", + "src": "18064:17:2" + }, + { + "id": 3585, + "nodeType": "Block", + "src": "18099:144:2", + "statements": [ + { + "expression": { + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 3567, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18122:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 3568, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18131:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 3569, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "18121:15:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3572, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "18154:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3570, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18139:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "18139:14:2", + "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": 3573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18139:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "src": "18121:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3575, + "nodeType": "ExpressionStatement", + "src": "18121:38:2" + }, + { + "expression": { + "id": 3583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3576, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18181:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3578, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18203:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18209:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3580, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18212:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18209:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3577, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "18188:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18188:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18181:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3584, + "nodeType": "ExpressionStatement", + "src": "18181:43:2" + } + ] + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3586, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18265:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3587, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18276:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "1337", + "id": 3590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18292:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18284:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3588, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "18284:7:2", + "typeDescriptions": {} + } + }, + "id": 3591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18284:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18276:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18265:37:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3665, + "nodeType": "IfStatement", + "src": "18261:539:2", + "trueBody": { + "id": 3664, + "nodeType": "Block", + "src": "18304:496:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3595, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18410:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3596, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18415:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3600, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18448:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3601, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18453:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3598, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18431:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18431:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18431:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3597, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18421:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18421:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3606, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18476:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3608, + "indexExpression": { + "id": 3607, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18482:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18476:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18468:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18468:7:2", + "typeDescriptions": {} + } + }, + "id": 3609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18468:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3594, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "18400:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18400:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3611, + "nodeType": "EmitStatement", + "src": "18395:91:2" + }, + { + "expression": { + "id": 3633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3612, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18508:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3623, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "18508:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3624, + "indexExpression": { + "id": 3614, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18519:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3625, + "indexExpression": { + "id": 3615, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18524:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3626, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3619, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18557:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3620, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18562:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3617, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18540:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18540:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3616, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18530:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18530:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18508:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3629, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18587:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3631, + "indexExpression": { + "id": 3630, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18593:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3628, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18579:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3627, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18579:7:2", + "typeDescriptions": {} + } + }, + "id": 3632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18579:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18508:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3634, + "nodeType": "ExpressionStatement", + "src": "18508:88:2" + }, + { + "expression": { + "id": 3651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3635, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18618:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3646, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "18618:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3647, + "indexExpression": { + "id": 3637, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18629:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3648, + "indexExpression": { + "id": 3638, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18634:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3649, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3642, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18667:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3643, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18672:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3640, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18650:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18650:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18650:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3639, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18640:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18640:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18618:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18689:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "18618:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3652, + "nodeType": "ExpressionStatement", + "src": "18618:75:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3656, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3657, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18739:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3659, + "indexExpression": { + "id": 3658, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18745:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18739:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3660, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3653, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18715:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18715:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18715:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3662, + "nodeType": "ExpressionStatement", + "src": "18715:39:2" + }, + { + "id": 3663, + "nodeType": "Break", + "src": "18776:5:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3669, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18836:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3670, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18841:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3672, + "indexExpression": { + "id": 3671, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18847:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18841:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3673, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18851:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3666, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18817:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18817:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18817:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3675, + "nodeType": "ExpressionStatement", + "src": "18817:39:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3513, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17701:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3514, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17705:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17705:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17701:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3677, + "initializationExpression": { + "assignments": [ + 3510 + ], + "declarations": [ + { + "constant": false, + "id": 3510, + "mutability": "mutable", + "name": "i", + "nameLocation": "17694:1:2", + "nodeType": "VariableDeclaration", + "scope": 3677, + "src": "17686:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3509, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3512, + "initialValue": { + "hexValue": "30", + "id": 3511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17698:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "17686:13:2" + }, + "loopExpression": { + "expression": { + "id": 3518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "17719:3:2", + "subExpression": { + "id": 3517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17719:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3519, + "nodeType": "ExpressionStatement", + "src": "17719:3:2" + }, + "nodeType": "ForStatement", + "src": "17681:1190:2" + } + ] + } + }, + "id": 3686, + "nodeType": "IfStatement", + "src": "16936:2058:2", + "trueBody": { + "id": 3504, + "nodeType": "Block", + "src": "16959:680:2", + "statements": [ + { + "assignments": [ + 3408 + ], + "declarations": [ + { + "constant": false, + "id": 3408, + "mutability": "mutable", + "name": "curr", + "nameLocation": "16981:4:2", + "nodeType": "VariableDeclaration", + "scope": 3504, + "src": "16973:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3407, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16973:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3416, + "initialValue": { + "arguments": [ + { + "id": 3411, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17006:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3412, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17011:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3414, + "indexExpression": { + "hexValue": "30", + "id": 3413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17017:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17011:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3409, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16988:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "16988:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16988:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16973:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3417, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17038:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17054:1:2", + "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": 3419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17046:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3418, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17046:7:2", + "typeDescriptions": {} + } + }, + "id": 3421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17046:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17038:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3434, + "nodeType": "IfStatement", + "src": "17034:106:2", + "trueBody": { + "id": 3433, + "nodeType": "Block", + "src": "17058:82:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3424, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17102:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3427, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17115:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3429, + "indexExpression": { + "hexValue": "30", + "id": 3428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17121:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17115:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17107:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17107:7:2", + "typeDescriptions": {} + } + }, + "id": 3430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17107:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3423, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17081:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17081:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3432, + "nodeType": "EmitStatement", + "src": "17076:49:2" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3435, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "17157:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 3436, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17165:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17157:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3444, + "nodeType": "IfStatement", + "src": "17153:180:2", + "trueBody": { + "id": 3443, + "nodeType": "Block", + "src": "17171:162:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17197:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 3440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17204:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 3438, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17189:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3442, + "nodeType": "ExpressionStatement", + "src": "17189:129:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "id": 3446, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17361:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3447, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17366:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3451, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17399:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3452, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17404:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3449, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17382:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17382:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17382:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3448, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17372:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17372:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3457, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17427:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3459, + "indexExpression": { + "hexValue": "30", + "id": 3458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17433:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17427:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3456, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3455, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17419:7:2", + "typeDescriptions": {} + } + }, + "id": 3460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17419:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3445, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "17351:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17351:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3462, + "nodeType": "EmitStatement", + "src": "17346:91:2" + }, + { + "expression": { + "id": 3484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3463, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17451:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3474, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "17451:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3475, + "indexExpression": { + "id": 3465, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17462:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3476, + "indexExpression": { + "id": 3466, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17467:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3477, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3470, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17500:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3471, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17505:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3468, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17483:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17483:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17483:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3467, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17473:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17473:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17451:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3480, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17530:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3482, + "indexExpression": { + "hexValue": "30", + "id": 3481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17536:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17530:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17522:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3478, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17522:7:2", + "typeDescriptions": {} + } + }, + "id": 3483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17522:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17451:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3485, + "nodeType": "ExpressionStatement", + "src": "17451:88:2" + }, + { + "expression": { + "id": 3502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3486, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17553:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3497, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "17553:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3498, + "indexExpression": { + "id": 3488, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17564:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3499, + "indexExpression": { + "id": 3489, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3500, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3493, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17602:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3494, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17607:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17585:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17585:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3490, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17575:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17575:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17553:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17624:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "17553:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3503, + "nodeType": "ExpressionStatement", + "src": "17553:75:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3688, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19012:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3689, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "19012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3691, + "indexExpression": { + "id": 3690, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19023:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3693, + "indexExpression": { + "id": 3692, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19028:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3701, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3697, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3698, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19066:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3695, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19044:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19044:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19044:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3694, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19034:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19034:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a20536c6f74287329206e6f7420666f756e642e", + "id": 3702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19082:49:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + }, + "value": "stdStorage find(StdStorage): Slot(s) not found." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + } + ], + "id": 3687, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "19004:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19004:128:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3704, + "nodeType": "ExpressionStatement", + "src": "19004:128:2" + }, + { + "expression": { + "id": 3707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19143:19:2", + "subExpression": { + "expression": { + "id": 3705, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3706, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19150:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3708, + "nodeType": "ExpressionStatement", + "src": "19143:19:2" + }, + { + "expression": { + "id": 3711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19172:16:2", + "subExpression": { + "expression": { + "id": 3709, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19179:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3710, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19179:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3712, + "nodeType": "ExpressionStatement", + "src": "19172:16:2" + }, + { + "expression": { + "id": 3715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19198:17:2", + "subExpression": { + "expression": { + "id": 3713, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19205:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19205:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3716, + "nodeType": "ExpressionStatement", + "src": "19198:17:2" + }, + { + "expression": { + "id": 3719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19225:18:2", + "subExpression": { + "expression": { + "id": 3717, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19232:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3718, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "19232:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3720, + "nodeType": "ExpressionStatement", + "src": "19225:18:2" + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3721, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19261:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3722, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "19261:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3724, + "indexExpression": { + "id": 3723, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3726, + "indexExpression": { + "id": 3725, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19277:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3734, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3730, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19310:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3731, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19315:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19293:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19293:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19293:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3727, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19283:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19283:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3735, + "nodeType": "Return", + "src": "19254:75:2" + } + ] + }, + "documentation": { + "id": 3293, + "nodeType": "StructuredDocumentation", + "src": "15614:129:2", + "text": "@notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "find", + "nameLocation": "16131:4:2", + "parameters": { + "id": 3297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3296, + "mutability": "mutable", + "name": "self", + "nameLocation": "16164:4:2", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16145:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3295, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3294, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "16145:10:2" + }, + "referencedDeclaration": 3235, + "src": "16145:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "16135:39:2" + }, + "returnParameters": { + "id": 3300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16209:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3298, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16208:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3757, + "nodeType": "FunctionDefinition", + "src": "19342:156:2", + "body": { + "id": 3756, + "nodeType": "Block", + "src": "19438:60:2", + "statements": [ + { + "expression": { + "id": 3752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3748, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19448:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3750, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19448:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3751, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "19463:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19448:22:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3753, + "nodeType": "ExpressionStatement", + "src": "19448:22:2" + }, + { + "expression": { + "id": 3754, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19487:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3747, + "id": 3755, + "nodeType": "Return", + "src": "19480:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "target", + "nameLocation": "19351:6:2", + "parameters": { + "id": 3743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3740, + "mutability": "mutable", + "name": "self", + "nameLocation": "19377:4:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19358:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3739, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3738, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19358:10:2" + }, + "referencedDeclaration": 3235, + "src": "19358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3742, + "mutability": "mutable", + "name": "_target", + "nameLocation": "19391:7:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19383:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19383:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19357:42:2" + }, + "returnParameters": { + "id": 3747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3746, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19418:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3745, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3744, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19418:10:2" + }, + "referencedDeclaration": 3235, + "src": "19418:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19417:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3777, + "nodeType": "FunctionDefinition", + "src": "19504:143:2", + "body": { + "id": 3776, + "nodeType": "Block", + "src": "19593:54:2", + "statements": [ + { + "expression": { + "id": 3772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3768, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19603:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19603:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3771, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3762, + "src": "19615:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19603:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3773, + "nodeType": "ExpressionStatement", + "src": "19603:16:2" + }, + { + "expression": { + "id": 3774, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19636:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3767, + "id": 3775, + "nodeType": "Return", + "src": "19629:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19513:3:2", + "parameters": { + "id": 3763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3760, + "mutability": "mutable", + "name": "self", + "nameLocation": "19536:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19517:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3759, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3758, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19517:10:2" + }, + "referencedDeclaration": 3235, + "src": "19517:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3762, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19549:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19542:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3761, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "19542:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "19516:38:2" + }, + "returnParameters": { + "id": 3767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3766, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19573:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3765, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3764, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19573:10:2" + }, + "referencedDeclaration": 3235, + "src": "19573:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19572:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3799, + "nodeType": "FunctionDefinition", + "src": "19653:156:2", + "body": { + "id": 3798, + "nodeType": "Block", + "src": "19749:60:2", + "statements": [ + { + "expression": { + "id": 3794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3788, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19759:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3790, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19759:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3792, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3782, + "src": "19776:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3791, + "name": "sigs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3292, + "src": "19771:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (string memory) pure returns (bytes4)" + } + }, + "id": 3793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19771:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19759:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3795, + "nodeType": "ExpressionStatement", + "src": "19759:22:2" + }, + { + "expression": { + "id": 3796, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3787, + "id": 3797, + "nodeType": "Return", + "src": "19791:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19662:3:2", + "parameters": { + "id": 3783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3780, + "mutability": "mutable", + "name": "self", + "nameLocation": "19685:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19666:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3779, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3778, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19666:10:2" + }, + "referencedDeclaration": 3235, + "src": "19666:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3782, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19705:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19691:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19691:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19665:45:2" + }, + "returnParameters": { + "id": 3787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3786, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19729:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3785, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3784, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19729:10:2" + }, + "referencedDeclaration": 3235, + "src": "19729:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19728:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3830, + "nodeType": "FunctionDefinition", + "src": "19815:179:2", + "body": { + "id": 3829, + "nodeType": "Block", + "src": "19909:85:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3821, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3804, + "src": "19959:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19951:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3819, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "19951:7:2", + "typeDescriptions": {} + } + }, + "id": 3822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19951:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19943:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19943:7:2", + "typeDescriptions": {} + } + }, + "id": 3823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19943:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19935:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3815, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19935:7:2", + "typeDescriptions": {} + } + }, + "id": 3824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19935:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3810, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19919:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3813, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19919:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "19919:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19919:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3826, + "nodeType": "ExpressionStatement", + "src": "19919:47:2" + }, + { + "expression": { + "id": 3827, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19983:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3809, + "id": 3828, + "nodeType": "Return", + "src": "19976:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "19824:8:2", + "parameters": { + "id": 3805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3802, + "mutability": "mutable", + "name": "self", + "nameLocation": "19852:4:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19833:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3801, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3800, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19833:10:2" + }, + "referencedDeclaration": 3235, + "src": "19833:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3804, + "mutability": "mutable", + "name": "who", + "nameLocation": "19866:3:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19858:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19858:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19832:38:2" + }, + "returnParameters": { + "id": 3809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19889:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3807, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3806, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19889:10:2" + }, + "referencedDeclaration": 3235, + "src": "19889:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19888:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3855, + "nodeType": "FunctionDefinition", + "src": "20000:161:2", + "body": { + "id": 3854, + "nodeType": "Block", + "src": "20094:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 3848, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "20128:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20120:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3846, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20120:7:2", + "typeDescriptions": {} + } + }, + "id": 3849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20120:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3841, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20104:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3844, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20104:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20104:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20104:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3851, + "nodeType": "ExpressionStatement", + "src": "20104:29:2" + }, + { + "expression": { + "id": 3852, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3840, + "id": 3853, + "nodeType": "Return", + "src": "20143:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20009:8:2", + "parameters": { + "id": 3836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3833, + "mutability": "mutable", + "name": "self", + "nameLocation": "20037:4:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20018:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3832, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3831, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20018:10:2" + }, + "referencedDeclaration": 3235, + "src": "20018:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3835, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20051:3:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20043:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3834, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20043:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20017:38:2" + }, + "returnParameters": { + "id": 3840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3839, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20074:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3838, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3837, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20074:10:2" + }, + "referencedDeclaration": 3235, + "src": "20074:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20073:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3877, + "nodeType": "FunctionDefinition", + "src": "20166:152:2", + "body": { + "id": 3876, + "nodeType": "Block", + "src": "20260:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3871, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3860, + "src": "20286:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3866, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20270:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3869, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20270:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20270:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20270:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3873, + "nodeType": "ExpressionStatement", + "src": "20270:20:2" + }, + { + "expression": { + "id": 3874, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20307:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3865, + "id": 3875, + "nodeType": "Return", + "src": "20300:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20175:8:2", + "parameters": { + "id": 3861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3858, + "mutability": "mutable", + "name": "self", + "nameLocation": "20203:4:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20184:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3857, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3856, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20184:10:2" + }, + "referencedDeclaration": 3235, + "src": "20184:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3860, + "mutability": "mutable", + "name": "key", + "nameLocation": "20217:3:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20209:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3859, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "20183:38:2" + }, + "returnParameters": { + "id": 3865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20240:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3863, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3862, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20240:10:2" + }, + "referencedDeclaration": 3235, + "src": "20240:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20239:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3897, + "nodeType": "FunctionDefinition", + "src": "20324:152:2", + "body": { + "id": 3896, + "nodeType": "Block", + "src": "20418:58:2", + "statements": [ + { + "expression": { + "id": 3892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3888, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3890, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "20428:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3891, + "name": "_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3882, + "src": "20442:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20428:20:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3893, + "nodeType": "ExpressionStatement", + "src": "20428:20:2" + }, + { + "expression": { + "id": 3894, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20465:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3887, + "id": 3895, + "nodeType": "Return", + "src": "20458:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "depth", + "nameLocation": "20333:5:2", + "parameters": { + "id": 3883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3880, + "mutability": "mutable", + "name": "self", + "nameLocation": "20358:4:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20339:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3879, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3878, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20339:10:2" + }, + "referencedDeclaration": 3235, + "src": "20339:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3882, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "20372:6:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20364:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3881, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20364:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20338:41:2" + }, + "returnParameters": { + "id": 3887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20398:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3885, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3884, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20398:10:2" + }, + "referencedDeclaration": 3235, + "src": "20398:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20397:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3920, + "nodeType": "FunctionDefinition", + "src": "20482:138:2", + "body": { + "id": 3919, + "nodeType": "Block", + "src": "20552:68:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3906, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3900, + "src": "20576:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3913, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3902, + "src": "20606:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20598:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3911, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "20598:7:2", + "typeDescriptions": {} + } + }, + "id": 3914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20598:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20590:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3909, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20590:7:2", + "typeDescriptions": {} + } + }, + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20590:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20582:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3907, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20582:7:2", + "typeDescriptions": {} + } + }, + "id": 3916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20582:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3905, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20562:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20562:51:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3918, + "nodeType": "ExpressionStatement", + "src": "20562:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20491:13:2", + "parameters": { + "id": 3903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3900, + "mutability": "mutable", + "name": "self", + "nameLocation": "20524:4:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20505:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3899, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3898, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20505:10:2" + }, + "referencedDeclaration": 3235, + "src": "20505:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3902, + "mutability": "mutable", + "name": "who", + "nameLocation": "20538:3:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20530:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20530:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20504:38:2" + }, + "returnParameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [], + "src": "20552:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3937, + "nodeType": "FunctionDefinition", + "src": "20626:120:2", + "body": { + "id": 3936, + "nodeType": "Block", + "src": "20696:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3929, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3923, + "src": "20720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "id": 3932, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3925, + "src": "20734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20726:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20726:7:2", + "typeDescriptions": {} + } + }, + "id": 3933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20726:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3928, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20706:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20706:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3935, + "nodeType": "ExpressionStatement", + "src": "20706:33:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20635:13:2", + "parameters": { + "id": 3926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3923, + "mutability": "mutable", + "name": "self", + "nameLocation": "20668:4:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20649:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3922, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3921, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20649:10:2" + }, + "referencedDeclaration": 3235, + "src": "20649:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3925, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20682:3:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20674:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20674:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20648:38:2" + }, + "returnParameters": { + "id": 3927, + "nodeType": "ParameterList", + "parameters": [], + "src": "20696:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3955, + "nodeType": "FunctionDefinition", + "src": "20752:222:2", + "body": { + "id": 3954, + "nodeType": "Block", + "src": "20821:153:2", + "statements": [ + { + "assignments": [ + 3946 + ], + "declarations": [ + { + "constant": false, + "id": 3946, + "mutability": "mutable", + "name": "t", + "nameLocation": "20839:1:2", + "nodeType": "VariableDeclaration", + "scope": 3954, + "src": "20831:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3945, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3947, + "nodeType": "VariableDeclarationStatement", + "src": "20831:9:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "20902:34:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "20916:10:2", + "value": { + "name": "write", + "nodeType": "YulIdentifier", + "src": "20921:5:2" + }, + "variableNames": [ + { + "name": "t", + "nodeType": "YulIdentifier", + "src": "20916:1:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 3946, + "isOffset": false, + "isSlot": false, + "src": "20916:1:2", + "valueSize": 1 + }, + { + "declaration": 3942, + "isOffset": false, + "isSlot": false, + "src": "20921:5:2", + "valueSize": 1 + } + ], + "id": 3948, + "nodeType": "InlineAssembly", + "src": "20893:43:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3950, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3940, + "src": "20959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "id": 3951, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3946, + "src": "20965:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3949, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20945:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20945:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "ExpressionStatement", + "src": "20945:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20761:13:2", + "parameters": { + "id": 3943, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3940, + "mutability": "mutable", + "name": "self", + "nameLocation": "20794:4:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20775:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3939, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3938, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20775:10:2" + }, + "referencedDeclaration": 3235, + "src": "20775:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3942, + "mutability": "mutable", + "name": "write", + "nameLocation": "20805:5:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20800:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3941, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20800:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20774:37:2" + }, + "returnParameters": { + "id": 3944, + "nodeType": "ParameterList", + "parameters": [], + "src": "20821:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4100, + "nodeType": "FunctionDefinition", + "src": "20980:1089:2", + "body": { + "id": 4099, + "nodeType": "Block", + "src": "21072:997:2", + "statements": [ + { + "assignments": [ + 3964 + ], + "declarations": [ + { + "constant": false, + "id": 3964, + "mutability": "mutable", + "name": "who", + "nameLocation": "21090:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21082:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21082:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3967, + "initialValue": { + "expression": { + "id": 3965, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21096:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21096:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21082:26:2" + }, + { + "assignments": [ + 3969 + ], + "declarations": [ + { + "constant": false, + "id": 3969, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "21125:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21118:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3968, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "21118:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3972, + "initialValue": { + "expression": { + "id": 3970, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21132:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3971, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21132:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21118:23:2" + }, + { + "assignments": [ + 3974 + ], + "declarations": [ + { + "constant": false, + "id": 3974, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "21159:11:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21151:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21151:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3977, + "initialValue": { + "expression": { + "id": 3975, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21173:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3976, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "21173:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21151:33:2" + }, + { + "assignments": [ + 3982 + ], + "declarations": [ + { + "constant": false, + "id": 3982, + "mutability": "mutable", + "name": "ins", + "nameLocation": "21211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21194:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3980, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3981, + "nodeType": "ArrayTypeName", + "src": "21194:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3985, + "initialValue": { + "expression": { + "id": 3983, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21217:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3984, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "21217:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21194:33:2" + }, + { + "assignments": [ + 3987 + ], + "declarations": [ + { + "constant": false, + "id": 3987, + "mutability": "mutable", + "name": "cald", + "nameLocation": "21251:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21238:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21238:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3995, + "initialValue": { + "arguments": [ + { + "id": 3990, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21275:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3992, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21289:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3991, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "21281:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21281:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21258:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21258:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21258:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21238:56:2" + }, + { + "condition": { + "id": 4010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "21308:69:2", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3996, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21309:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "21309:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3999, + "indexExpression": { + "id": 3998, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 4001, + "indexExpression": { + "id": 4000, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21325:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 4009, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4005, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4006, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21363:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4003, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21341:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21341:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21341:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4002, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21331:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21331:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4016, + "nodeType": "IfStatement", + "src": "21304:110:2", + "trueBody": { + "id": 4015, + "nodeType": "Block", + "src": "21379:35:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4012, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21398:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4011, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "21393:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21393:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4014, + "nodeType": "ExpressionStatement", + "src": "21393:10:2" + } + ] + } + }, + { + "assignments": [ + 4018 + ], + "declarations": [ + { + "constant": false, + "id": 4018, + "mutability": "mutable", + "name": "slot", + "nameLocation": "21431:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21423:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4017, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21423:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4036, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 4021, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21446:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4022, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "21446:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 4024, + "indexExpression": { + "id": 4023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21457:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 4026, + "indexExpression": { + "id": 4025, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21462:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 4034, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4030, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21495:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4031, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21500:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4028, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21478:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21478:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21478:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4027, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21468:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21468:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21438:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4019, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21438:7:2", + "typeDescriptions": {} + } + }, + "id": 4035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21438:77:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21423:92:2" + }, + { + "assignments": [ + 4038 + ], + "declarations": [ + { + "constant": false, + "id": 4038, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "21534:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21526:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21526:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4039, + "nodeType": "VariableDeclarationStatement", + "src": "21526:12:2" + }, + { + "id": 4056, + "nodeType": "Block", + "src": "21548:126:2", + "statements": [ + { + "assignments": [ + null, + 4041 + ], + "declarations": [ + null, + { + "constant": false, + "id": 4041, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "21578:4:2", + "nodeType": "VariableDeclaration", + "scope": 4056, + "src": "21565:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4040, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21565:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4046, + "initialValue": { + "arguments": [ + { + "id": 4044, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3987, + "src": "21601:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 4042, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21586:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "21586:14:2", + "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": 4045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21586:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21562:44:2" + }, + { + "expression": { + "id": 4054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4047, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21620:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4049, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "21642:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 4050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21648:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 4051, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21651:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "21648:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4048, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "21627:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 4053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21620:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4055, + "nodeType": "ExpressionStatement", + "src": "21620:43:2" + } + ] + }, + { + "assignments": [ + 4058 + ], + "declarations": [ + { + "constant": false, + "id": 4058, + "mutability": "mutable", + "name": "curr", + "nameLocation": "21691:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21683:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4064, + "initialValue": { + "arguments": [ + { + "id": 4061, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21716:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4062, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21721:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4059, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21698:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "21698:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21698:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21683:43:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4065, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 4066, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4058, + "src": "21749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21741:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4074, + "nodeType": "IfStatement", + "src": "21737:172:2", + "trueBody": { + "id": 4073, + "nodeType": "Block", + "src": "21755:154:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 4069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 4070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21784:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 4068, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "21769:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21769:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4072, + "nodeType": "ExpressionStatement", + "src": "21769:129:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4078, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21937:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4079, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21942:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4080, + "name": "set", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3960, + "src": "21948:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4075, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21918:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "21918:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 4081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21918:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4082, + "nodeType": "ExpressionStatement", + "src": "21918:34:2" + }, + { + "expression": { + "id": 4085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21962:19:2", + "subExpression": { + "expression": { + "id": 4083, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21969:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4084, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21969:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4086, + "nodeType": "ExpressionStatement", + "src": "21962:19:2" + }, + { + "expression": { + "id": 4089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21991:16:2", + "subExpression": { + "expression": { + "id": 4087, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21998:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4088, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21998:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4090, + "nodeType": "ExpressionStatement", + "src": "21991:16:2" + }, + { + "expression": { + "id": 4093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22017:17:2", + "subExpression": { + "expression": { + "id": 4091, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22024:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4092, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "22024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4094, + "nodeType": "ExpressionStatement", + "src": "22017:17:2" + }, + { + "expression": { + "id": 4097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22044:18:2", + "subExpression": { + "expression": { + "id": 4095, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22051:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4096, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "22051:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4098, + "nodeType": "ExpressionStatement", + "src": "22044:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20989:13:2", + "parameters": { + "id": 3961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3958, + "mutability": "mutable", + "name": "self", + "nameLocation": "21031:4:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21012:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3957, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3956, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "21012:10:2" + }, + "referencedDeclaration": 3235, + "src": "21012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3960, + "mutability": "mutable", + "name": "set", + "nameLocation": "21053:3:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21045:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3959, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21045:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "21002:60:2" + }, + "returnParameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [], + "src": "21072:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4132, + "nodeType": "FunctionDefinition", + "src": "22075:204:2", + "body": { + "id": 4131, + "nodeType": "Block", + "src": "22145:134:2", + "statements": [ + { + "assignments": [ + 4109 + ], + "declarations": [ + { + "constant": false, + "id": 4109, + "mutability": "mutable", + "name": "t", + "nameLocation": "22163:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22155:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22155:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4112, + "initialValue": { + "expression": { + "id": 4110, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22167:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4111, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "22167:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22155:24:2" + }, + { + "assignments": [ + 4114 + ], + "declarations": [ + { + "constant": false, + "id": 4114, + "mutability": "mutable", + "name": "s", + "nameLocation": "22197:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22189:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4113, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4118, + "initialValue": { + "arguments": [ + { + "id": 4116, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22206:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4115, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "22201:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22201:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22189:22:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4123, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4109, + "src": "22257:1:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4126, + "name": "s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4114, + "src": "22268:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22260:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4124, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22260:7:2", + "typeDescriptions": {} + } + }, + "id": 4127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22260:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4121, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "22239:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "22239:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22239:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4119, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22228:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "22228:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22228:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4107, + "id": 4130, + "nodeType": "Return", + "src": "22221:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read", + "nameLocation": "22084:4:2", + "parameters": { + "id": 4104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4103, + "mutability": "mutable", + "name": "self", + "nameLocation": "22108:4:2", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22089:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4102, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4101, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22089:10:2" + }, + "referencedDeclaration": 3235, + "src": "22089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22088:25:2" + }, + "returnParameters": { + "id": 4107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4106, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22131:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4105, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "22131:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "22130:14:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "id": 4151, + "nodeType": "FunctionDefinition", + "src": "22285:131:2", + "body": { + "id": 4150, + "nodeType": "Block", + "src": "22359:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4143, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4135, + "src": "22392:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4142, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22387:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22387:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22400:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4145, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22400:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4147, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22399:9:2", + "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": 4140, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22376:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22376:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22376:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4139, + "id": 4149, + "nodeType": "Return", + "src": "22369:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bytes32", + "nameLocation": "22294:12:2", + "parameters": { + "id": 4136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4135, + "mutability": "mutable", + "name": "self", + "nameLocation": "22326:4:2", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22307:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4134, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4133, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22307:10:2" + }, + "referencedDeclaration": 3235, + "src": "22307:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22306:25:2" + }, + "returnParameters": { + "id": 4139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4138, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22350:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4137, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "22349:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4182, + "nodeType": "FunctionDefinition", + "src": "22423:279:2", + "body": { + "id": 4181, + "nodeType": "Block", + "src": "22491:211:2", + "statements": [ + { + "assignments": [ + 4160 + ], + "declarations": [ + { + "constant": false, + "id": 4160, + "mutability": "mutable", + "name": "v", + "nameLocation": "22508:1:2", + "nodeType": "VariableDeclaration", + "scope": 4181, + "src": "22501:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4159, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "22501:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4164, + "initialValue": { + "arguments": [ + { + "id": 4162, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4154, + "src": "22521:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4161, + "name": "read_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4239, + "src": "22512:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_int256_$", + "typeString": "function (struct StdStorage storage pointer) returns (int256)" + } + }, + "id": 4163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22512:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22501:25:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4165, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22540:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 4166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4170, + "nodeType": "IfStatement", + "src": "22536:24:2", + "trueBody": { + "expression": { + "hexValue": "66616c7365", + "id": 4168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22555:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 4158, + "id": 4169, + "nodeType": "Return", + "src": "22548:12:2" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4171, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22574:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 4172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22579:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "22574:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4176, + "nodeType": "IfStatement", + "src": "22570:23:2", + "trueBody": { + "expression": { + "hexValue": "74727565", + "id": 4174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22589:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 4158, + "id": 4175, + "nodeType": "Return", + "src": "22582:11:2" + } + }, + { + "expression": { + "arguments": [ + { + "hexValue": "73746453746f7261676520726561645f626f6f6c2853746453746f72616765293a2043616e6e6f74206465636f64652e204d616b65207375726520796f75206172652072656164696e67206120626f6f6c2e", + "id": 4178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22610:84:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + }, + "value": "stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + } + ], + "id": 4177, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "22603:6:2", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 4179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22603:92:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4180, + "nodeType": "ExpressionStatement", + "src": "22603:92:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bool", + "nameLocation": "22432:9:2", + "parameters": { + "id": 4155, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4154, + "mutability": "mutable", + "name": "self", + "nameLocation": "22461:4:2", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22442:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4153, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4152, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22442:10:2" + }, + "referencedDeclaration": 3235, + "src": "22442:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22441:25:2" + }, + "returnParameters": { + "id": 4158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4157, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22485:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4156, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22485:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22484:6:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4201, + "nodeType": "FunctionDefinition", + "src": "22708:131:2", + "body": { + "id": 4200, + "nodeType": "Block", + "src": "22782:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4193, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4185, + "src": "22815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4192, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22810:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22810:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22823:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22823:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4197, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22822:9:2", + "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": 4190, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22799:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22799:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22799:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 4189, + "id": 4199, + "nodeType": "Return", + "src": "22792:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_address", + "nameLocation": "22717:12:2", + "parameters": { + "id": 4186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4185, + "mutability": "mutable", + "name": "self", + "nameLocation": "22749:4:2", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22730:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4184, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4183, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22730:10:2" + }, + "referencedDeclaration": 3235, + "src": "22730:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22729:25:2" + }, + "returnParameters": { + "id": 4189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4188, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22773:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22773:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22772:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4220, + "nodeType": "FunctionDefinition", + "src": "22845:128:2", + "body": { + "id": 4219, + "nodeType": "Block", + "src": "22916:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4212, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4204, + "src": "22949:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4211, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22944:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22944:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22957:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22957:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4216, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22956:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 4209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22933:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22933:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22933:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4208, + "id": 4218, + "nodeType": "Return", + "src": "22926:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_uint", + "nameLocation": "22854:9:2", + "parameters": { + "id": 4205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4204, + "mutability": "mutable", + "name": "self", + "nameLocation": "22883:4:2", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22864:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4203, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4202, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22864:10:2" + }, + "referencedDeclaration": 3235, + "src": "22864:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22863:25:2" + }, + "returnParameters": { + "id": 4208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4207, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22907:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22907:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22906:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4239, + "nodeType": "FunctionDefinition", + "src": "22979:125:2", + "body": { + "id": 4238, + "nodeType": "Block", + "src": "23048:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4231, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "23081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4230, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "23076:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23076:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23089:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 4233, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23089:6:2", + "typeDescriptions": {} + } + } + ], + "id": 4235, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23088:8:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + ], + "expression": { + "id": 4228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23065:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "23065:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23065:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 4227, + "id": 4237, + "nodeType": "Return", + "src": "23058:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_int", + "nameLocation": "22988:8:2", + "parameters": { + "id": 4224, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4223, + "mutability": "mutable", + "name": "self", + "nameLocation": "23016:4:2", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "22997:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4222, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4221, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22997:10:2" + }, + "referencedDeclaration": 3235, + "src": "22997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22996:25:2" + }, + "returnParameters": { + "id": 4227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4226, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "23040:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4225, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23040:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "23039:8:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4295, + "nodeType": "FunctionDefinition", + "src": "23110:297:2", + "body": { + "id": 4294, + "nodeType": "Block", + "src": "23193:214:2", + "statements": [ + { + "assignments": [ + 4249 + ], + "declarations": [ + { + "constant": false, + "id": 4249, + "mutability": "mutable", + "name": "out", + "nameLocation": "23211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23203:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4248, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23203:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4250, + "nodeType": "VariableDeclarationStatement", + "src": "23203:11:2" + }, + { + "assignments": [ + 4252 + ], + "declarations": [ + { + "constant": false, + "id": 4252, + "mutability": "mutable", + "name": "max", + "nameLocation": "23233:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23225:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4251, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4261, + "initialValue": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4253, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23239:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3332", + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23250:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23239:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "expression": { + "id": 4258, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23260:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23260:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "23239:29:2", + "trueExpression": { + "hexValue": "3332", + "id": 4257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23255:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23225:43:2" + }, + { + "body": { + "id": 4290, + "nodeType": "Block", + "src": "23309:72:2", + "statements": [ + { + "expression": { + "id": 4288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4272, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23323:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4275, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23338:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4279, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4276, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4243, + "src": "23340:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4277, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23349:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23340:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23338:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30784646", + "id": 4280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23354:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xFF" + }, + "src": "23338:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 4274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23330:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4273, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23330:7:2", + "typeDescriptions": {} + } + }, + "id": 4282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23330:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4283, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23364:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "38", + "id": 4284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23368:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "23364:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 4286, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23363:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23330:40:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "23323:47:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4289, + "nodeType": "ExpressionStatement", + "src": "23323:47:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4266, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23295:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 4267, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4252, + "src": "23299:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23295:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4291, + "initializationExpression": { + "assignments": [ + 4263 + ], + "declarations": [ + { + "constant": false, + "id": 4263, + "mutability": "mutable", + "name": "i", + "nameLocation": "23288:1:2", + "nodeType": "VariableDeclaration", + "scope": 4291, + "src": "23283:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4262, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23283:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4265, + "initialValue": { + "hexValue": "30", + "id": 4264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23292:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23283:10:2" + }, + "loopExpression": { + "expression": { + "id": 4270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23304:3:2", + "subExpression": { + "id": 4269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23304:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4271, + "nodeType": "ExpressionStatement", + "src": "23304:3:2" + }, + "nodeType": "ForStatement", + "src": "23278:103:2" + }, + { + "expression": { + "id": 4292, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23397:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4247, + "id": 4293, + "nodeType": "Return", + "src": "23390:10:2" + } + ] + }, + "functionSelector": "53584939", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bytesToBytes32", + "nameLocation": "23119:14:2", + "parameters": { + "id": 4244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4241, + "mutability": "mutable", + "name": "b", + "nameLocation": "23147:1:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23134:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4240, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23134:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4243, + "mutability": "mutable", + "name": "offset", + "nameLocation": "23155:6:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23150:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23133:29:2" + }, + "returnParameters": { + "id": 4247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4246, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23184:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4245, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23184:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "23183:9:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "id": 4336, + "nodeType": "FunctionDefinition", + "src": "23413:397:2", + "body": { + "id": 4335, + "nodeType": "Block", + "src": "23490:320:2", + "statements": [ + { + "assignments": [ + 4304 + ], + "declarations": [ + { + "constant": false, + "id": 4304, + "mutability": "mutable", + "name": "result", + "nameLocation": "23513:6:2", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "23500:19:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4303, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23500:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4312, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4307, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23532:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3332", + "id": 4309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23543:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23532:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "23522:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 4305, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23526:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 4311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23522:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23500:46:2" + }, + { + "body": { + "id": 4331, + "nodeType": "Block", + "src": "23595:185:2", + "statements": [ + { + "assignments": [ + 4325 + ], + "declarations": [ + { + "constant": false, + "id": 4325, + "mutability": "mutable", + "name": "k", + "nameLocation": "23617:1:2", + "nodeType": "VariableDeclaration", + "scope": 4331, + "src": "23609:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4324, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23609:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4329, + "initialValue": { + "baseExpression": { + "id": 4326, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23621:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4328, + "indexExpression": { + "id": 4327, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23623:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23621:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23609:16:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "23695:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "23724:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23736:2:2", + "type": "", + "value": "32" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23744:2:2", + "type": "", + "value": "32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23748:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "23740:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23740:10:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23732:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23732:19:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23720:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23720:32:2" + }, + { + "name": "k", + "nodeType": "YulIdentifier", + "src": "23754:1:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "23713:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "23713:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "23713:43:2" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 4314, + "isOffset": false, + "isSlot": false, + "src": "23748:1:2", + "valueSize": 1 + }, + { + "declaration": 4325, + "isOffset": false, + "isSlot": false, + "src": "23754:1:2", + "valueSize": 1 + }, + { + "declaration": 4304, + "isOffset": false, + "isSlot": false, + "src": "23724:6:2", + "valueSize": 1 + } + ], + "id": 4330, + "nodeType": "InlineAssembly", + "src": "23686:84:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23576:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4318, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23580:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23580:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23576:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4332, + "initializationExpression": { + "assignments": [ + 4314 + ], + "declarations": [ + { + "constant": false, + "id": 4314, + "mutability": "mutable", + "name": "i", + "nameLocation": "23569:1:2", + "nodeType": "VariableDeclaration", + "scope": 4332, + "src": "23561:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23561:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4316, + "initialValue": { + "hexValue": "30", + "id": 4315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23573:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23561:13:2" + }, + "loopExpression": { + "expression": { + "id": 4322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23590:3:2", + "subExpression": { + "id": 4321, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23590:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4323, + "nodeType": "ExpressionStatement", + "src": "23590:3:2" + }, + "nodeType": "ForStatement", + "src": "23556:224:2" + }, + { + "expression": { + "id": 4333, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4304, + "src": "23797:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4302, + "id": 4334, + "nodeType": "Return", + "src": "23790:13:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "flatten", + "nameLocation": "23422:7:2", + "parameters": { + "id": 4299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4298, + "mutability": "mutable", + "name": "b", + "nameLocation": "23447:1:2", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23430:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4296, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4297, + "nodeType": "ArrayTypeName", + "src": "23430:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "23429:20:2" + }, + "returnParameters": { + "id": 4302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23472:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4300, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23472:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "23471:14:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdStorage", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4337 + ], + "name": "stdStorage", + "nameLocation": "14948:10:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 4484, + "nodeType": "ContractDefinition", + "src": "24010:1245:2", + "nodes": [ + { + "id": 4341, + "nodeType": "VariableDeclaration", + "src": "24032:115:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MIN", + "nameLocation": "24056:10:2", + "scope": 4484, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4338, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24032:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "id": 4340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24069:78:2", + "subExpression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24070:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "typeDescriptions": { + "typeIdentifier": "t_rational_minus_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const -578...(70 digits omitted)...9968" + } + }, + "visibility": "private" + }, + { + "id": 4366, + "nodeType": "FunctionDefinition", + "src": "24154:295:2", + "body": { + "id": 4365, + "nodeType": "Block", + "src": "24209:240:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4348, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24287:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4349, + "name": "INT256_MIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4341, + "src": "24292:10:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "24287:15:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4353, + "nodeType": "IfStatement", + "src": "24283:117:2", + "trueBody": { + "expression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24323:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "functionReturnParameters": 4347, + "id": 4352, + "nodeType": "Return", + "src": "24316:84:2" + } + }, + { + "expression": { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4356, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24426:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24431:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24426:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 4361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24439:2:2", + "subExpression": { + "id": 4360, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24426:15:2", + "trueExpression": { + "id": 4359, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24435:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24418:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24418:7:2", + "typeDescriptions": {} + } + }, + "id": 4363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24418:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4347, + "id": 4364, + "nodeType": "Return", + "src": "24411:31:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "abs", + "nameLocation": "24163:3:2", + "parameters": { + "id": 4344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4343, + "mutability": "mutable", + "name": "a", + "nameLocation": "24174:1:2", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24167:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4342, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24167:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24166:10:2" + }, + "returnParameters": { + "id": 4347, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4346, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24200:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24199:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4387, + "nodeType": "FunctionDefinition", + "src": "24455:138:2", + "body": { + "id": 4386, + "nodeType": "Block", + "src": "24524:69:2", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4375, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 4376, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24541:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4381, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24581:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24585:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24581:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24541:45:2", + "trueExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4378, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24561:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4379, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24565:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24561:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4374, + "id": 4385, + "nodeType": "Return", + "src": "24534:52:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24464:5:2", + "parameters": { + "id": 4371, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4368, + "mutability": "mutable", + "name": "a", + "nameLocation": "24478:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24470:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24470:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4370, + "mutability": "mutable", + "name": "b", + "nameLocation": "24489:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24481:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4369, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24481:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24469:22:2" + }, + "returnParameters": { + "id": 4374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4373, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24515:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24515:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24514:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4431, + "nodeType": "FunctionDefinition", + "src": "24599:290:2", + "body": { + "id": 4430, + "nodeType": "Block", + "src": "24666:223:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4396, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24720:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24725:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24720:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4399, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24730:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24735:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24730:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4403, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24740:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24744:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24740:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4406, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24749:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24740:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:34:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4421, + "nodeType": "IfStatement", + "src": "24716:93:2", + "trueBody": { + "id": 4420, + "nodeType": "Block", + "src": "24756:53:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4412, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24783:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 4416, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24795:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4415, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24791:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24791:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4411, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "24777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24777:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4419, + "nodeType": "Return", + "src": "24770:28:2" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 4423, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4422, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24867:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24867:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 4426, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24880:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4425, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24876:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24876:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24867:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4429, + "nodeType": "Return", + "src": "24860:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24608:5:2", + "parameters": { + "id": 4392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4389, + "mutability": "mutable", + "name": "a", + "nameLocation": "24621:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24614:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4388, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24614:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4391, + "mutability": "mutable", + "name": "b", + "nameLocation": "24631:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24624:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4390, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24624:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24613:20:2" + }, + "returnParameters": { + "id": 4395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4394, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24657:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24657:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24656:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4454, + "nodeType": "FunctionDefinition", + "src": "24895:160:2", + "body": { + "id": 4453, + "nodeType": "Block", + "src": "24971:84:2", + "statements": [ + { + "assignments": [ + 4441 + ], + "declarations": [ + { + "constant": false, + "id": 4441, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "24989:8:2", + "nodeType": "VariableDeclaration", + "scope": 4453, + "src": "24981:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4440, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24981:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4446, + "initialValue": { + "arguments": [ + { + "id": 4443, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4433, + "src": "25006:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4444, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25009:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4442, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "25000:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25000:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24981:30:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4447, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4441, + "src": "25029:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25040:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25029:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4450, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25047:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25029:19:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4439, + "id": 4452, + "nodeType": "Return", + "src": "25022:26:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "24904:12:2", + "parameters": { + "id": 4436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4433, + "mutability": "mutable", + "name": "a", + "nameLocation": "24925:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24917:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24917:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4435, + "mutability": "mutable", + "name": "b", + "nameLocation": "24936:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24928:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24928:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24916:22:2" + }, + "returnParameters": { + "id": 4439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4438, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24962:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4437, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24962:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24961:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4483, + "nodeType": "FunctionDefinition", + "src": "25061:192:2", + "body": { + "id": 4482, + "nodeType": "Block", + "src": "25135:118:2", + "statements": [ + { + "assignments": [ + 4464 + ], + "declarations": [ + { + "constant": false, + "id": 4464, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "25153:8:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25145:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4463, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25145:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4469, + "initialValue": { + "arguments": [ + { + "id": 4466, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "25170:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4467, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25173:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4465, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4431, + "src": "25164:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 4468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25164:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25145:30:2" + }, + { + "assignments": [ + 4471 + ], + "declarations": [ + { + "constant": false, + "id": 4471, + "mutability": "mutable", + "name": "absB", + "nameLocation": "25193:4:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25185:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25185:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4475, + "initialValue": { + "arguments": [ + { + "id": 4473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25204:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4472, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "25200:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25200:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25185:21:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4476, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4464, + "src": "25224:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25235:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25224:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4479, + "name": "absB", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4471, + "src": "25242:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25224:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4462, + "id": 4481, + "nodeType": "Return", + "src": "25217:29:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "25070:12:2", + "parameters": { + "id": 4459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4456, + "mutability": "mutable", + "name": "a", + "nameLocation": "25090:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25083:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4455, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25083:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4458, + "mutability": "mutable", + "name": "b", + "nameLocation": "25100:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25093:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4457, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25093:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "25082:20:2" + }, + "returnParameters": { + "id": 4462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25126:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25126:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25125:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4484 + ], + "name": "stdMath", + "nameLocation": "24018:7:2", + "scope": 4485, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 2 +} \ No newline at end of file diff --git a/getting-started/foundry/out/test.sol/stdMath.json b/getting-started/foundry/out/test.sol/stdMath.json new file mode 100644 index 00000000..dd762a2a --- /dev/null +++ b/getting-started/foundry/out/test.sol/stdMath.json @@ -0,0 +1,35148 @@ +{ + "abi": [], + "bytecode": { + "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e8d8fa4462214f1ac12f59628bbf085dee3be122e4ef38a86ae5f167c09bbedb64736f6c634300080d0033", + "sourceMap": "24010:1245:2:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;24010:1245:2;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220e8d8fa4462214f1ac12f59628bbf085dee3be122e4ef38a86ae5f167c09bbedb64736f6c634300080d0033", + "sourceMap": "24010:1245:2:-:0;;;;;;;;", + "linkReferences": {} + }, + "methodIdentifiers": {}, + "ast": { + "absolutePath": "lib/forge-std/src/Test.sol", + "id": 4485, + "exportedSymbols": { + "DSTest": [ + 1786 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "38:25218:2", + "nodes": [ + { + "id": 1820, + "nodeType": "PragmaDirective", + "src": "38:31:2", + "literals": [ + "solidity", + ">=", + "0.6", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 1821, + "nodeType": "ImportDirective", + "src": "71:22:2", + "absolutePath": "lib/forge-std/src/Script.sol", + "file": "./Script.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1819, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1822, + "nodeType": "ImportDirective", + "src": "94:26:2", + "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", + "file": "ds-test/test.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1787, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 3137, + "nodeType": "ContractDefinition", + "src": "170:13108:2", + "nodes": [ + { + "id": 1830, + "nodeType": "UsingForDirective", + "src": "217:32:2", + "global": false, + "libraryName": { + "id": 1827, + "name": "stdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4337, + "src": "223:10:2" + }, + "typeName": { + "id": 1829, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1828, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "238:10:2" + }, + "referencedDeclaration": 3235, + "src": "238:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + } + }, + { + "id": 1833, + "nodeType": "VariableDeclaration", + "src": "255:126:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "281:11:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "255:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 1832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "303:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "internal" + }, + { + "id": 1836, + "nodeType": "VariableDeclaration", + "src": "388:28:2", + "constant": false, + "mutability": "mutable", + "name": "stdstore", + "nameLocation": "408:8:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 1835, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1834, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "388:10:2" + }, + "referencedDeclaration": 3235, + "src": "388:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "id": 1841, + "nodeType": "EventDefinition", + "src": "631:31:2", + "anonymous": false, + "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", + "name": "log_array", + "nameLocation": "637:9:2", + "parameters": { + "id": 1840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1839, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "657:3:2", + "nodeType": "VariableDeclaration", + "scope": 1841, + "src": "647:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1837, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "647:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1838, + "nodeType": "ArrayTypeName", + "src": "647:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "646:15:2" + } + }, + { + "id": 1846, + "nodeType": "EventDefinition", + "src": "667:30:2", + "anonymous": false, + "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", + "name": "log_array", + "nameLocation": "673:9:2", + "parameters": { + "id": 1845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1844, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "692:3:2", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1842, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "683:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1843, + "nodeType": "ArrayTypeName", + "src": "683:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "682:14:2" + } + }, + { + "id": 1851, + "nodeType": "EventDefinition", + "src": "702:31:2", + "anonymous": false, + "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", + "name": "log_array", + "nameLocation": "708:9:2", + "parameters": { + "id": 1850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1849, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "728:3:2", + "nodeType": "VariableDeclaration", + "scope": 1851, + "src": "718:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "718:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1848, + "nodeType": "ArrayTypeName", + "src": "718:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "717:15:2" + } + }, + { + "id": 1858, + "nodeType": "EventDefinition", + "src": "738:49:2", + "anonymous": false, + "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", + "name": "log_named_array", + "nameLocation": "744:15:2", + "parameters": { + "id": 1857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1853, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "767:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "760:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1852, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "760:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1856, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "782:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "772:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "772:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1855, + "nodeType": "ArrayTypeName", + "src": "772:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "759:27:2" + } + }, + { + "id": 1865, + "nodeType": "EventDefinition", + "src": "792:48:2", + "anonymous": false, + "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", + "name": "log_named_array", + "nameLocation": "798:15:2", + "parameters": { + "id": 1864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1860, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "821:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "814:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1859, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "814:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1863, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "835:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "826:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1861, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "826:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1862, + "nodeType": "ArrayTypeName", + "src": "826:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "813:26:2" + } + }, + { + "id": 1872, + "nodeType": "EventDefinition", + "src": "845:49:2", + "anonymous": false, + "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", + "name": "log_named_array", + "nameLocation": "851:15:2", + "parameters": { + "id": 1871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1867, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "874:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "867:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "867:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1870, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "889:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "879:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "879:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1869, + "nodeType": "ArrayTypeName", + "src": "879:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "866:27:2" + } + }, + { + "id": 1887, + "nodeType": "FunctionDefinition", + "src": "1180:83:2", + "body": { + "id": 1886, + "nodeType": "Block", + "src": "1215:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1880, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1233:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1233:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1882, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1874, + "src": "1251:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1233:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1877, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1225:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1225:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1885, + "nodeType": "ExpressionStatement", + "src": "1225:31:2" + } + ] + }, + "functionSelector": "b9c071b4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "skip", + "nameLocation": "1189:4:2", + "parameters": { + "id": 1875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1874, + "mutability": "mutable", + "name": "time", + "nameLocation": "1202:4:2", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "1194:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1193:14:2" + }, + "returnParameters": { + "id": 1876, + "nodeType": "ParameterList", + "parameters": [], + "src": "1215:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1902, + "nodeType": "FunctionDefinition", + "src": "1269:85:2", + "body": { + "id": 1901, + "nodeType": "Block", + "src": "1306:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1895, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1324:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1324:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1897, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "1342:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1324:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1892, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1316:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1316:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1316:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1900, + "nodeType": "ExpressionStatement", + "src": "1316:31:2" + } + ] + }, + "functionSelector": "2d6c17a3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rewind", + "nameLocation": "1278:6:2", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "mutability": "mutable", + "name": "time", + "nameLocation": "1293:4:2", + "nodeType": "VariableDeclaration", + "scope": 1902, + "src": "1285:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1285:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1284:14:2" + }, + "returnParameters": { + "id": 1891, + "nodeType": "ParameterList", + "parameters": [], + "src": "1306:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1923, + "nodeType": "FunctionDefinition", + "src": "1417:96:2", + "body": { + "id": 1922, + "nodeType": "Block", + "src": "1451:62:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1910, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1469:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1474:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1479:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1474:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1907, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1461:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1461:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1461:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1915, + "nodeType": "ExpressionStatement", + "src": "1461:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1919, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1502:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1916, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1493:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1493:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1493:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1921, + "nodeType": "ExpressionStatement", + "src": "1493:13:2" + } + ] + }, + "functionSelector": "233240ee", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1426:4:2", + "parameters": { + "id": 1905, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1904, + "mutability": "mutable", + "name": "who", + "nameLocation": "1439:3:2", + "nodeType": "VariableDeclaration", + "scope": 1923, + "src": "1431:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1903, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1431:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1430:13:2" + }, + "returnParameters": { + "id": 1906, + "nodeType": "ParameterList", + "parameters": [], + "src": "1451:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1944, + "nodeType": "FunctionDefinition", + "src": "1519:106:2", + "body": { + "id": 1943, + "nodeType": "Block", + "src": "1567:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1933, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1934, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "1590:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1930, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1577:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1577:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1577:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1936, + "nodeType": "ExpressionStatement", + "src": "1577:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1940, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1614:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1937, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1605:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1605:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1605:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1942, + "nodeType": "ExpressionStatement", + "src": "1605:13:2" + } + ] + }, + "functionSelector": "e9a79a7b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1528:4:2", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1925, + "mutability": "mutable", + "name": "who", + "nameLocation": "1541:3:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1533:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1533:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1927, + "mutability": "mutable", + "name": "give", + "nameLocation": "1554:4:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1546:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1546:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1532:27:2" + }, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "1567:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1968, + "nodeType": "FunctionDefinition", + "src": "1631:120:2", + "body": { + "id": 1967, + "nodeType": "Block", + "src": "1681:70:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1954, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1699:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1704:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1709:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1704:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1951, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1691:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1691:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1959, + "nodeType": "ExpressionStatement", + "src": "1691:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1963, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1732:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1964, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1948, + "src": "1737:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1960, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1723:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1723:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1966, + "nodeType": "ExpressionStatement", + "src": "1723:21:2" + } + ] + }, + "functionSelector": "29a9e300", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1640:4:2", + "parameters": { + "id": 1949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1946, + "mutability": "mutable", + "name": "who", + "nameLocation": "1653:3:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1645:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1945, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1645:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1948, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1666:6:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1658:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1658:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1644:29:2" + }, + "returnParameters": { + "id": 1950, + "nodeType": "ParameterList", + "parameters": [], + "src": "1681:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1992, + "nodeType": "FunctionDefinition", + "src": "1757:130:2", + "body": { + "id": 1991, + "nodeType": "Block", + "src": "1821:66:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1980, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1839:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1981, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1974, + "src": "1844:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1977, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1831:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1983, + "nodeType": "ExpressionStatement", + "src": "1831:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1987, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1868:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1988, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1972, + "src": "1873:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1984, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1859:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1859:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1859:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1990, + "nodeType": "ExpressionStatement", + "src": "1859:21:2" + } + ] + }, + "functionSelector": "af9bbe5f", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1766:4:2", + "parameters": { + "id": 1975, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1970, + "mutability": "mutable", + "name": "who", + "nameLocation": "1779:3:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1771:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1969, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1771:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1972, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1792:6:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1784:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1784:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1974, + "mutability": "mutable", + "name": "give", + "nameLocation": "1808:4:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1800:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1800:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1770:43:2" + }, + "returnParameters": { + "id": 1976, + "nodeType": "ParameterList", + "parameters": [], + "src": "1821:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2013, + "nodeType": "FunctionDefinition", + "src": "1958:106:2", + "body": { + "id": 2012, + "nodeType": "Block", + "src": "1997:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2000, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2015:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2020:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2025:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2020:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1997, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2007:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2005, + "nodeType": "ExpressionStatement", + "src": "2007:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2009, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2053:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2006, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2039:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2039:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2039:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2011, + "nodeType": "ExpressionStatement", + "src": "2039:18:2" + } + ] + }, + "functionSelector": "6f597075", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "1967:9:2", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1994, + "mutability": "mutable", + "name": "who", + "nameLocation": "1985:3:2", + "nodeType": "VariableDeclaration", + "scope": 2013, + "src": "1977:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1977:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1976:13:2" + }, + "returnParameters": { + "id": 1996, + "nodeType": "ParameterList", + "parameters": [], + "src": "1997:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2034, + "nodeType": "FunctionDefinition", + "src": "2070:116:2", + "body": { + "id": 2033, + "nodeType": "Block", + "src": "2123:63:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2141:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2024, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "2146:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2020, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2133:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2133:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2133:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2026, + "nodeType": "ExpressionStatement", + "src": "2133:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2030, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2175:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2027, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2161:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2161:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2161:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2032, + "nodeType": "ExpressionStatement", + "src": "2161:18:2" + } + ] + }, + "functionSelector": "108554f2", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2079:9:2", + "parameters": { + "id": 2018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2015, + "mutability": "mutable", + "name": "who", + "nameLocation": "2097:3:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2089:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2089:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "give", + "nameLocation": "2110:4:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2102:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2102:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2088:27:2" + }, + "returnParameters": { + "id": 2019, + "nodeType": "ParameterList", + "parameters": [], + "src": "2123:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2058, + "nodeType": "FunctionDefinition", + "src": "2305:130:2", + "body": { + "id": 2057, + "nodeType": "Block", + "src": "2360:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2044, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2378:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2383:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2388:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2383:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 2041, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2370:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2370:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2370:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2049, + "nodeType": "ExpressionStatement", + "src": "2370:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2053, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2416:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2054, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2038, + "src": "2421:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2050, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2402:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2402:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2402:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "2402:26:2" + } + ] + }, + "functionSelector": "d06d8229", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2314:9:2", + "parameters": { + "id": 2039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2036, + "mutability": "mutable", + "name": "who", + "nameLocation": "2332:3:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2324:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2324:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2038, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2345:6:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2337:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2037, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2337:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2323:29:2" + }, + "returnParameters": { + "id": 2040, + "nodeType": "ParameterList", + "parameters": [], + "src": "2360:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2082, + "nodeType": "FunctionDefinition", + "src": "2441:140:2", + "body": { + "id": 2081, + "nodeType": "Block", + "src": "2510:71:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2070, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2528:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2071, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2064, + "src": "2533:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2067, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2520:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2520:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2520:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2073, + "nodeType": "ExpressionStatement", + "src": "2520:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2077, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2562:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2078, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "2567:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2074, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2548:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2548:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2548:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2080, + "nodeType": "ExpressionStatement", + "src": "2548:26:2" + } + ] + }, + "functionSelector": "3bf82db1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2450:9:2", + "parameters": { + "id": 2065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2060, + "mutability": "mutable", + "name": "who", + "nameLocation": "2468:3:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2460:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2059, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2460:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2062, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2481:6:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2473:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2473:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2064, + "mutability": "mutable", + "name": "give", + "nameLocation": "2497:4:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2489:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2489:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2459:43:2" + }, + "returnParameters": { + "id": 2066, + "nodeType": "ParameterList", + "parameters": [], + "src": "2510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2099, + "nodeType": "FunctionDefinition", + "src": "2587:102:2", + "body": { + "id": 2098, + "nodeType": "Block", + "src": "2630:59:2", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2087, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2640:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4726, + "src": "2640:12:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 2090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2640:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2091, + "nodeType": "ExpressionStatement", + "src": "2640:14:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2095, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2084, + "src": "2678:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2092, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2664:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2664:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2664:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2097, + "nodeType": "ExpressionStatement", + "src": "2664:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "changePrank", + "nameLocation": "2596:11:2", + "parameters": { + "id": 2085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2084, + "mutability": "mutable", + "name": "who", + "nameLocation": "2616:3:2", + "nodeType": "VariableDeclaration", + "scope": 2099, + "src": "2608:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2608:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2607:13:2" + }, + "returnParameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [], + "src": "2630:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2129, + "nodeType": "FunctionDefinition", + "src": "2733:341:2", + "body": { + "id": 2128, + "nodeType": "Block", + "src": "2794:280:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "5741524e494e47", + "id": 2109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2826:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + "value": "WARNING" + }, + { + "hexValue": "546573742074697028616464726573732c616464726573732c75696e74323536293a2054686520607469706020737464636865617420686173206265656e20646570726563617465642e2055736520606465616c6020696e73746561642e", + "id": 2110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2837:96:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + }, + "value": "Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + } + ], + "id": 2108, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "2809:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2809:125:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2112, + "nodeType": "EmitStatement", + "src": "2804:130:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2125, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2105, + "src": "3062:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2122, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2103, + "src": "3031:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2116, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2101, + "src": "2973:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2113, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2944:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2115, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "2944:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2118, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "2944:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2121, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "2944:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2124, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "2944:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2127, + "nodeType": "ExpressionStatement", + "src": "2944:123:2" + } + ] + }, + "functionSelector": "d82555f1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tip", + "nameLocation": "2742:3:2", + "parameters": { + "id": 2106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2101, + "mutability": "mutable", + "name": "token", + "nameLocation": "2754:5:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2746:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2746:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2103, + "mutability": "mutable", + "name": "to", + "nameLocation": "2769:2:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2761:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2761:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2105, + "mutability": "mutable", + "name": "give", + "nameLocation": "2781:4:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2773:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2104, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2773:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2745:41:2" + }, + "returnParameters": { + "id": 2107, + "nodeType": "ParameterList", + "parameters": [], + "src": "2794:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2144, + "nodeType": "FunctionDefinition", + "src": "3165:81:2", + "body": { + "id": 2143, + "nodeType": "Block", + "src": "3212:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2139, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "3230:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2140, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "3234:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2136, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "3222:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "3222:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3222:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2142, + "nodeType": "ExpressionStatement", + "src": "3222:17:2" + } + ] + }, + "functionSelector": "c88a5e6d", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3174:4:2", + "parameters": { + "id": 2134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2131, + "mutability": "mutable", + "name": "to", + "nameLocation": "3187:2:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3179:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3179:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2133, + "mutability": "mutable", + "name": "give", + "nameLocation": "3199:4:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3191:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2132, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3191:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3178:26:2" + }, + "returnParameters": { + "id": 2135, + "nodeType": "ParameterList", + "parameters": [], + "src": "3212:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2161, + "nodeType": "FunctionDefinition", + "src": "3370:107:2", + "body": { + "id": 2160, + "nodeType": "Block", + "src": "3432:45:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2154, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2146, + "src": "3447:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2155, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2148, + "src": "3454:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2156, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2150, + "src": "3458:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "66616c7365", + "id": 2157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3464:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2153, + "name": "deal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2144, + 2161, + 2264 + ], + "referencedDeclaration": 2264, + "src": "3442:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$", + "typeString": "function (address,address,uint256,bool)" + } + }, + "id": 2158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3442:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2159, + "nodeType": "ExpressionStatement", + "src": "3442:28:2" + } + ] + }, + "functionSelector": "6bce989b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3379:4:2", + "parameters": { + "id": 2151, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2146, + "mutability": "mutable", + "name": "token", + "nameLocation": "3392:5:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3384:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2145, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3384:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "mutability": "mutable", + "name": "to", + "nameLocation": "3407:2:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3399:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3399:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "mutability": "mutable", + "name": "give", + "nameLocation": "3419:4:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3411:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2149, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3411:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3383:41:2" + }, + "returnParameters": { + "id": 2152, + "nodeType": "ParameterList", + "parameters": [], + "src": "3432:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2264, + "nodeType": "FunctionDefinition", + "src": "3483:915:2", + "body": { + "id": 2263, + "nodeType": "Block", + "src": "3558:840:2", + "statements": [ + { + "assignments": [ + null, + 2173 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2173, + "mutability": "mutable", + "name": "balData", + "nameLocation": "3615:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3602:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2172, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3602:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2182, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3660:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + }, + { + "id": 2179, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3672:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2176, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3637:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "3637:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3637:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2174, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3626:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3626:10:2", + "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": 2181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3626:50:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3599:77:2" + }, + { + "assignments": [ + 2184 + ], + "declarations": [ + { + "constant": false, + "id": 2184, + "mutability": "mutable", + "name": "prevBal", + "nameLocation": "3694:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3686:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2192, + "initialValue": { + "arguments": [ + { + "id": 2187, + "name": "balData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2173, + "src": "3715:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3725:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3725:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2190, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3724:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2185, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3704:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "3704:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3704:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3686:48:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2205, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "3889:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2202, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3858:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3824:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2196, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3800:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2193, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3771:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2195, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "3771:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2198, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "3771:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "3771:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "3771:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2207, + "nodeType": "ExpressionStatement", + "src": "3771:123:2" + }, + { + "condition": { + "id": 2208, + "name": "adjust", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2169, + "src": "3939:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2262, + "nodeType": "IfStatement", + "src": "3936:456:2", + "trueBody": { + "id": 2261, + "nodeType": "Block", + "src": "3946:446:2", + "statements": [ + { + "assignments": [ + null, + 2210 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2210, + "mutability": "mutable", + "name": "totSupData", + "nameLocation": "3976:10:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "3963:23:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2209, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3963:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2218, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "id": 2213, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4001:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "4001:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4001:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2211, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3990:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3990:10:2", + "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": 2217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3990:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3960:76:2" + }, + { + "assignments": [ + 2220 + ], + "declarations": [ + { + "constant": false, + "id": 2220, + "mutability": "mutable", + "name": "totSup", + "nameLocation": "4058:6:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "4050:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4050:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2228, + "initialValue": { + "arguments": [ + { + "id": 2223, + "name": "totSupData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2210, + "src": "4078:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2225, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4091:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4091:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2226, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4090:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2221, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4067:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "4067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4067:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4050:50:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2229, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4117:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2230, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4124:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4117:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2247, + "nodeType": "Block", + "src": "4198:59:2", + "statements": [ + { + "expression": { + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2240, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4216:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2241, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4227:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2242, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4234:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4227:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2244, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4226:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4216:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2246, + "nodeType": "ExpressionStatement", + "src": "4216:26:2" + } + ] + }, + "id": 2248, + "nodeType": "IfStatement", + "src": "4114:143:2", + "trueBody": { + "id": 2239, + "nodeType": "Block", + "src": "4133:59:2", + "statements": [ + { + "expression": { + "id": 2237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2232, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4151:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2233, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4162:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2234, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4172:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4162:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2236, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4161:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4151:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2238, + "nodeType": "ExpressionStatement", + "src": "4151:26:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2258, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4374:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4331:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "arguments": [ + { + "id": 2252, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "4303:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2249, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "4270:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2251, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "4270:32:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "4270:60:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:72:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2257, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "4270:103:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:111:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2260, + "nodeType": "ExpressionStatement", + "src": "4270:111:2" + } + ] + } + } + ] + }, + "functionSelector": "97754ae9", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3492:4:2", + "parameters": { + "id": 2170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2163, + "mutability": "mutable", + "name": "token", + "nameLocation": "3505:5:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3497:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3497:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2165, + "mutability": "mutable", + "name": "to", + "nameLocation": "3520:2:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3512:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3512:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2167, + "mutability": "mutable", + "name": "give", + "nameLocation": "3532:4:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3524:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3524:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2169, + "mutability": "mutable", + "name": "adjust", + "nameLocation": "3543:6:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3538:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3538:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3496:54:2" + }, + "returnParameters": { + "id": 2171, + "nodeType": "ParameterList", + "parameters": [], + "src": "3558:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2328, + "nodeType": "FunctionDefinition", + "src": "4404:578:2", + "body": { + "id": 2327, + "nodeType": "Block", + "src": "4498:484:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2276, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4516:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 2277, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4523:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4516:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "5465737420626f756e642875696e743235362c75696e743235362c75696e74323536293a204d6178206973206c657373207468616e206d696e2e", + "id": 2279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4528:60:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + }, + "value": "Test bound(uint256,uint256,uint256): Max is less than min." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + } + ], + "id": 2275, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:81:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2281, + "nodeType": "ExpressionStatement", + "src": "4508:81:2" + }, + { + "assignments": [ + 2283 + ], + "declarations": [ + { + "constant": false, + "id": 2283, + "mutability": "mutable", + "name": "size", + "nameLocation": "4608:4:2", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "4600:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2282, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4600:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2287, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2284, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4615:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2285, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4621:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4615:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4600:24:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2288, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4639:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4647:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4639:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2296, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4713:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2297, + "name": "UINT256_MAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1833, + "src": "4721:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4713:19:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2319, + "nodeType": "Block", + "src": "4799:123:2", + "statements": [ + { + "expression": { + "id": 2305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "4813:6:2", + "subExpression": { + "id": 2304, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2306, + "nodeType": "ExpressionStatement", + "src": "4813:6:2" + }, + { + "assignments": [ + 2308 + ], + "declarations": [ + { + "constant": false, + "id": 2308, + "mutability": "mutable", + "name": "mod", + "nameLocation": "4865:3:2", + "nodeType": "VariableDeclaration", + "scope": 2319, + "src": "4857:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2307, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4857:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2312, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2309, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 2310, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4875:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4871:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4857:22:2" + }, + { + "expression": { + "id": 2317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2313, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4893:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2314, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4902:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2315, + "name": "mod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "4908:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4893:18:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2318, + "nodeType": "ExpressionStatement", + "src": "4893:18:2" + } + ] + }, + "id": 2320, + "nodeType": "IfStatement", + "src": "4709:213:2", + "trueBody": { + "id": 2303, + "nodeType": "Block", + "src": "4742:35:2", + "statements": [ + { + "expression": { + "id": 2301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2299, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4756:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2300, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4765:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4756:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2302, + "nodeType": "ExpressionStatement", + "src": "4756:10:2" + } + ] + } + }, + "id": 2321, + "nodeType": "IfStatement", + "src": "4635:287:2", + "trueBody": { + "id": 2295, + "nodeType": "Block", + "src": "4658:37:2", + "statements": [ + { + "expression": { + "id": 2293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2291, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4672:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2292, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4681:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4672:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2294, + "nodeType": "ExpressionStatement", + "src": "4672:12:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "426f756e6420526573756c74", + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4952:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + "value": "Bound Result" + }, + { + "id": 2324, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4968:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2322, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "4937:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4937:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2326, + "nodeType": "EmitStatement", + "src": "4932:43:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bound", + "nameLocation": "4413:5:2", + "parameters": { + "id": 2271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2266, + "mutability": "mutable", + "name": "x", + "nameLocation": "4427:1:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4419:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2268, + "mutability": "mutable", + "name": "min", + "nameLocation": "4438:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4430:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2267, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2270, + "mutability": "mutable", + "name": "max", + "nameLocation": "4451:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4443:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2269, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4443:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4418:37:2" + }, + "returnParameters": { + "id": 2274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2273, + "mutability": "mutable", + "name": "result", + "nameLocation": "4490:6:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4482:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2272, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4482:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4481:16:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2360, + "nodeType": "FunctionDefinition", + "src": "5142:455:2", + "body": { + "id": 2359, + "nodeType": "Block", + "src": "5251:346:2", + "statements": [ + { + "assignments": [ + 2338 + ], + "declarations": [ + { + "constant": false, + "id": 2338, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5274:8:2", + "nodeType": "VariableDeclaration", + "scope": 2359, + "src": "5261:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2337, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5261:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2347, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 2343, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2330, + "src": "5313:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2341, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5302:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5302:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5302:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2345, + "name": "args", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2332, + "src": "5320:4:2", + "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": 2339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5285:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "5285:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5285:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5261:64:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5387:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5401:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5416:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5423:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5433:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5419:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5419:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5446:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5440:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5440:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5409:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5409:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5401:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2335, + "isOffset": false, + "isSlot": false, + "src": "5401:4:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5423:8:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5446:8:2", + "valueSize": 1 + } + ], + "id": 2348, + "nodeType": "InlineAssembly", + "src": "5378:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2350, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2335, + "src": "5497:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:1:2", + "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": 2352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5505:7:2", + "typeDescriptions": {} + } + }, + "id": 2354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5505:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5497:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e672c6279746573293a204465706c6f796d656e74206661696c65642e", + "id": 2356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5529:51:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + }, + "value": "Test deployCode(string,bytes): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + } + ], + "id": 2349, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5476:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5476:114:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2358, + "nodeType": "ExpressionStatement", + "src": "5476:114:2" + } + ] + }, + "functionSelector": "29ce9dde", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5151:10:2", + "parameters": { + "id": 2333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2330, + "mutability": "mutable", + "name": "what", + "nameLocation": "5176:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5162:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5162:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2332, + "mutability": "mutable", + "name": "args", + "nameLocation": "5195:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5182:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2331, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5182:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5161:39:2" + }, + "returnParameters": { + "id": 2336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2335, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5241:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5233:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5233:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5232:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2386, + "nodeType": "FunctionDefinition", + "src": "5603:406:2", + "body": { + "id": 2385, + "nodeType": "Block", + "src": "5693:316:2", + "statements": [ + { + "assignments": [ + 2368 + ], + "declarations": [ + { + "constant": false, + "id": 2368, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5716:8:2", + "nodeType": "VariableDeclaration", + "scope": 2385, + "src": "5703:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2367, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5703:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2373, + "initialValue": { + "arguments": [ + { + "id": 2371, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2362, + "src": "5738:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2369, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5727:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5727:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5727:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5703:40:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5805:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5819:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5834:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5841:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5851:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5837:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5837:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5864:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5858:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5858:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5827:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5827:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5819:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2365, + "isOffset": false, + "isSlot": false, + "src": "5819:4:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5841:8:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5864:8:2", + "valueSize": 1 + } + ], + "id": 2374, + "nodeType": "InlineAssembly", + "src": "5796:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2376, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2365, + "src": "5915:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5931:1:2", + "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": 2378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5923:7:2", + "typeDescriptions": {} + } + }, + "id": 2380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5923:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5915:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e67293a204465706c6f796d656e74206661696c65642e", + "id": 2382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5947:45:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + }, + "value": "Test deployCode(string): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + } + ], + "id": 2375, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5894:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5894:108:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2384, + "nodeType": "ExpressionStatement", + "src": "5894:108:2" + } + ] + }, + "functionSelector": "9a8325a0", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5612:10:2", + "parameters": { + "id": 2363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2362, + "mutability": "mutable", + "name": "what", + "nameLocation": "5637:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5623:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2361, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5623:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5622:20:2" + }, + "returnParameters": { + "id": 2366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2365, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5683:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5675:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2364, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5675:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5674:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2400, + "nodeType": "FunctionDefinition", + "src": "6229:118:2", + "body": { + "id": 2399, + "nodeType": "Block", + "src": "6279:68:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6311:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2393, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2388, + "src": "6320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2391, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6294:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6294:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2395, + "nodeType": "EmitStatement", + "src": "6289:35:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2396, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6334:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6334:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2398, + "nodeType": "ExpressionStatement", + "src": "6334:6:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fail", + "nameLocation": "6238:4:2", + "parameters": { + "id": 2389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2388, + "mutability": "mutable", + "name": "err", + "nameLocation": "6257:3:2", + "nodeType": "VariableDeclaration", + "scope": 2400, + "src": "6243:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2387, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6243:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6242:19:2" + }, + "returnParameters": { + "id": 2390, + "nodeType": "ParameterList", + "parameters": [], + "src": "6279:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2411, + "nodeType": "FunctionDefinition", + "src": "6353:83:2", + "body": { + "id": 2410, + "nodeType": "Block", + "src": "6402:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6423:5:2", + "subExpression": { + "id": 2406, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2402, + "src": "6424:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2405, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "6412:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 2408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6412:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2409, + "nodeType": "ExpressionStatement", + "src": "6412:17:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6362:11:2", + "parameters": { + "id": 2403, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2402, + "mutability": "mutable", + "name": "data", + "nameLocation": "6379:4:2", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "6374:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2401, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6374:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6373:11:2" + }, + "returnParameters": { + "id": 2404, + "nodeType": "ParameterList", + "parameters": [], + "src": "6402:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2425, + "nodeType": "FunctionDefinition", + "src": "6442:107:2", + "body": { + "id": 2424, + "nodeType": "Block", + "src": "6510:39:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6531:5:2", + "subExpression": { + "id": 2419, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "6532:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2421, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "6538:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2418, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 290, + "src": "6520:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory)" + } + }, + "id": 2422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6520:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2423, + "nodeType": "ExpressionStatement", + "src": "6520:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6451:11:2", + "parameters": { + "id": 2416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2413, + "mutability": "mutable", + "name": "data", + "nameLocation": "6468:4:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6463:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2412, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6463:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "err", + "nameLocation": "6488:3:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6474:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2414, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6474:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6462:30:2" + }, + "returnParameters": { + "id": 2417, + "nodeType": "ParameterList", + "parameters": [], + "src": "6510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2461, + "nodeType": "FunctionDefinition", + "src": "6555:326:2", + "body": { + "id": 2460, + "nodeType": "Block", + "src": "6598:283:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2432, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6612:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2433, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6617:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6612:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2459, + "nodeType": "IfStatement", + "src": "6608:267:2", + "trueBody": { + "id": 2458, + "nodeType": "Block", + "src": "6620:255:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6c5d", + "id": 2436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6659:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + }, + "value": "Error: a == b not satisfied [bool]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + } + ], + "id": 2435, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6639:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6639:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2438, + "nodeType": "EmitStatement", + "src": "6634:62:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6735:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "condition": { + "id": 2441, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6762:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6749:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6753:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2439, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6715:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6715:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2446, + "nodeType": "EmitStatement", + "src": "6710:60:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6809:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "condition": { + "id": 2449, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6823:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6836:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6823:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6827:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2447, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6789:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6789:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2454, + "nodeType": "EmitStatement", + "src": "6784:60:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2455, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6858:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6858:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2457, + "nodeType": "ExpressionStatement", + "src": "6858:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6564:8:2", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "mutability": "mutable", + "name": "a", + "nameLocation": "6578:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6573:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6573:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "mutability": "mutable", + "name": "b", + "nameLocation": "6586:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6581:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6581:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6572:16:2" + }, + "returnParameters": { + "id": 2431, + "nodeType": "ParameterList", + "parameters": [], + "src": "6598:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2486, + "nodeType": "FunctionDefinition", + "src": "6887:178:2", + "body": { + "id": 2485, + "nodeType": "Block", + "src": "6949:116:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2470, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "6963:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2471, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "6968:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6963:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2484, + "nodeType": "IfStatement", + "src": "6959:100:2", + "trueBody": { + "id": 2483, + "nodeType": "Block", + "src": "6971:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2475, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2467, + "src": "7016:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2473, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6990:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6990:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2477, + "nodeType": "EmitStatement", + "src": "6985:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2479, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "7043:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2480, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "7046:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2478, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2461, + "src": "7034:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 2481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7034:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2482, + "nodeType": "ExpressionStatement", + "src": "7034:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6896:8:2", + "parameters": { + "id": 2468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2463, + "mutability": "mutable", + "name": "a", + "nameLocation": "6910:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6905:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2462, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6905:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2465, + "mutability": "mutable", + "name": "b", + "nameLocation": "6918:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6913:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6913:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2467, + "mutability": "mutable", + "name": "err", + "nameLocation": "6935:3:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6921:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2466, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6921:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6904:35:2" + }, + "returnParameters": { + "id": 2469, + "nodeType": "ParameterList", + "parameters": [], + "src": "6949:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2499, + "nodeType": "FunctionDefinition", + "src": "7071:91:2", + "body": { + "id": 2498, + "nodeType": "Block", + "src": "7130:32:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2494, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2488, + "src": "7150:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2495, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2490, + "src": "7153:1:2", + "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" + } + ], + "id": 2493, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1758, + "src": "7140:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory)" + } + }, + "id": 2496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7140:15:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2497, + "nodeType": "ExpressionStatement", + "src": "7140:15:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7080:8:2", + "parameters": { + "id": 2491, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2488, + "mutability": "mutable", + "name": "a", + "nameLocation": "7102:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7089:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2487, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7089:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2490, + "mutability": "mutable", + "name": "b", + "nameLocation": "7118:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7105:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2489, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7105:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7088:32:2" + }, + "returnParameters": { + "id": 2492, + "nodeType": "ParameterList", + "parameters": [], + "src": "7130:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2515, + "nodeType": "FunctionDefinition", + "src": "7168:115:2", + "body": { + "id": 2514, + "nodeType": "Block", + "src": "7246:37:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2509, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2501, + "src": "7266:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2510, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "7269:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2511, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "7272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2508, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1785, + "src": "7256:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory,string memory)" + } + }, + "id": 2512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7256:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2513, + "nodeType": "ExpressionStatement", + "src": "7256:20:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7177:8:2", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2501, + "mutability": "mutable", + "name": "a", + "nameLocation": "7199:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7186:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2500, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7186:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2503, + "mutability": "mutable", + "name": "b", + "nameLocation": "7215:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7202:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7202:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "mutability": "mutable", + "name": "err", + "nameLocation": "7232:3:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7218:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7218:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7185:51:2" + }, + "returnParameters": { + "id": 2507, + "nodeType": "ParameterList", + "parameters": [], + "src": "7246:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2557, + "nodeType": "FunctionDefinition", + "src": "7289:336:2", + "body": { + "id": 2556, + "nodeType": "Block", + "src": "7356:269:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2527, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7391:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2525, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7380:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7380:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7380:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2524, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7370:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7370:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2533, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7419:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7408:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7408:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7408:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2530, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7398:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7398:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7370:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2555, + "nodeType": "IfStatement", + "src": "7366:253:2", + "trueBody": { + "id": 2554, + "nodeType": "Block", + "src": "7424:195:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745b5d5d", + "id": 2538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7447:38:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + }, + "value": "Error: a == b not satisfied [uint[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + } + ], + "id": 2537, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7443:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7443:43:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2540, + "nodeType": "EmitStatement", + "src": "7438:48:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7521:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2543, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7535:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2541, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7505:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7505:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2545, + "nodeType": "EmitStatement", + "src": "7500:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7572:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2548, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7586:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2546, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7556:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7556:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2550, + "nodeType": "EmitStatement", + "src": "7551:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2551, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7602:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7602:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2553, + "nodeType": "ExpressionStatement", + "src": "7602:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7298:8:2", + "parameters": { + "id": 2522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2518, + "mutability": "mutable", + "name": "a", + "nameLocation": "7324:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7307:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2516, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7307:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2517, + "nodeType": "ArrayTypeName", + "src": "7307:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2521, + "mutability": "mutable", + "name": "b", + "nameLocation": "7344:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7327:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7327:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2520, + "nodeType": "ArrayTypeName", + "src": "7327:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7306:40:2" + }, + "returnParameters": { + "id": 2523, + "nodeType": "ParameterList", + "parameters": [], + "src": "7356:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2599, + "nodeType": "FunctionDefinition", + "src": "7631:333:2", + "body": { + "id": 2598, + "nodeType": "Block", + "src": "7696:268:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2569, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7731:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2567, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7720:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7720:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7720:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2566, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7710:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7710:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2575, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7748:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7748:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7748:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2572, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7738:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7738:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7710:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2597, + "nodeType": "IfStatement", + "src": "7706:252:2", + "trueBody": { + "id": 2596, + "nodeType": "Block", + "src": "7764:194:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745b5d5d", + "id": 2580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7787:37:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + }, + "value": "Error: a == b not satisfied [int[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + } + ], + "id": 2579, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7783:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2582, + "nodeType": "EmitStatement", + "src": "7778:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7860:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2585, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7874:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2583, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7844:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7844:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2587, + "nodeType": "EmitStatement", + "src": "7839:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7911:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2590, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7925:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2588, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7895:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7895:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2592, + "nodeType": "EmitStatement", + "src": "7890:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2593, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7941:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7941:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2595, + "nodeType": "ExpressionStatement", + "src": "7941:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7640:8:2", + "parameters": { + "id": 2564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2560, + "mutability": "mutable", + "name": "a", + "nameLocation": "7665:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7649:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2558, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7649:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2559, + "nodeType": "ArrayTypeName", + "src": "7649:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2563, + "mutability": "mutable", + "name": "b", + "nameLocation": "7684:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7668:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2561, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7668:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2562, + "nodeType": "ArrayTypeName", + "src": "7668:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7648:38:2" + }, + "returnParameters": { + "id": 2565, + "nodeType": "ParameterList", + "parameters": [], + "src": "7696:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2641, + "nodeType": "FunctionDefinition", + "src": "7970:339:2", + "body": { + "id": 2640, + "nodeType": "Block", + "src": "8037:272:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2611, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8072:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8061:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8061:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2608, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8051:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8051:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2617, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8100:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2615, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8089:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8089:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2614, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8079:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8079:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8051:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2639, + "nodeType": "IfStatement", + "src": "8047:256:2", + "trueBody": { + "id": 2638, + "nodeType": "Block", + "src": "8105:198:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735b5d5d", + "id": 2622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8128:41:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + }, + "value": "Error: a == b not satisfied [address[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + } + ], + "id": 2621, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8124:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8124:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2624, + "nodeType": "EmitStatement", + "src": "8119:51:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8205:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2627, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2625, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8189:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8189:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2629, + "nodeType": "EmitStatement", + "src": "8184:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8256:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2632, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8270:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2630, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8240:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8240:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2634, + "nodeType": "EmitStatement", + "src": "8235:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2635, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "8286:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8286:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2637, + "nodeType": "ExpressionStatement", + "src": "8286:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7979:8:2", + "parameters": { + "id": 2606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2602, + "mutability": "mutable", + "name": "a", + "nameLocation": "8005:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "7988:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2600, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7988:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2601, + "nodeType": "ArrayTypeName", + "src": "7988:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2605, + "mutability": "mutable", + "name": "b", + "nameLocation": "8025:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "8008:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8008:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2604, + "nodeType": "ArrayTypeName", + "src": "8008:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "7987:40:2" + }, + "returnParameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [], + "src": "8037:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2678, + "nodeType": "FunctionDefinition", + "src": "8315:248:2", + "body": { + "id": 2677, + "nodeType": "Block", + "src": "8401:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2655, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8436:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8425:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8425:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8425:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2652, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8415:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8415:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2661, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8464:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8453:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8453:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8453:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2658, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8443:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8443:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8415:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2676, + "nodeType": "IfStatement", + "src": "8411:146:2", + "trueBody": { + "id": 2675, + "nodeType": "Block", + "src": "8469:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2667, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2649, + "src": "8514:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2665, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8488:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8488:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2669, + "nodeType": "EmitStatement", + "src": "8483:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2671, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 2672, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8544:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2670, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2557, + "src": "8532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (uint256[] memory,uint256[] memory)" + } + }, + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8532:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2674, + "nodeType": "ExpressionStatement", + "src": "8532:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8324:8:2", + "parameters": { + "id": 2650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2644, + "mutability": "mutable", + "name": "a", + "nameLocation": "8350:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8333:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8333:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2643, + "nodeType": "ArrayTypeName", + "src": "8333:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2647, + "mutability": "mutable", + "name": "b", + "nameLocation": "8370:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8353:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8353:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2646, + "nodeType": "ArrayTypeName", + "src": "8353:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2649, + "mutability": "mutable", + "name": "err", + "nameLocation": "8387:3:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8373:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2648, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8373:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8332:59:2" + }, + "returnParameters": { + "id": 2651, + "nodeType": "ParameterList", + "parameters": [], + "src": "8401:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2715, + "nodeType": "FunctionDefinition", + "src": "8569:246:2", + "body": { + "id": 2714, + "nodeType": "Block", + "src": "8653:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2692, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8688:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2690, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8677:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8677:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8677:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2689, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8667:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8667:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2698, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8716:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8705:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8705:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8705:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8695:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8695:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8667:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2713, + "nodeType": "IfStatement", + "src": "8663:146:2", + "trueBody": { + "id": 2712, + "nodeType": "Block", + "src": "8721:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8757:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2704, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2686, + "src": "8766:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2702, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8740:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8740:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2706, + "nodeType": "EmitStatement", + "src": "8735:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2708, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8793:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + { + "id": 2709, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8796:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2707, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2599, + "src": "8784:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_int256_$dyn_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (int256[] memory,int256[] memory)" + } + }, + "id": 2710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8784:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2711, + "nodeType": "ExpressionStatement", + "src": "8784:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8578:8:2", + "parameters": { + "id": 2687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2681, + "mutability": "mutable", + "name": "a", + "nameLocation": "8603:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8587:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2679, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8587:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2680, + "nodeType": "ArrayTypeName", + "src": "8587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2684, + "mutability": "mutable", + "name": "b", + "nameLocation": "8622:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8606:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2682, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8606:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2683, + "nodeType": "ArrayTypeName", + "src": "8606:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2686, + "mutability": "mutable", + "name": "err", + "nameLocation": "8639:3:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8625:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2685, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8625:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8586:57:2" + }, + "returnParameters": { + "id": 2688, + "nodeType": "ParameterList", + "parameters": [], + "src": "8653:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2752, + "nodeType": "FunctionDefinition", + "src": "8822:248:2", + "body": { + "id": 2751, + "nodeType": "Block", + "src": "8908:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2729, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "8943:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8932:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8932:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8932:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2726, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8922:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8922:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2735, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "8971:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8960:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8960:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8960:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2732, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8950:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8950:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8922:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2750, + "nodeType": "IfStatement", + "src": "8918:146:2", + "trueBody": { + "id": 2749, + "nodeType": "Block", + "src": "8976:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9012:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2741, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2723, + "src": "9021:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2739, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8995:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8995:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2743, + "nodeType": "EmitStatement", + "src": "8990:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2745, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "9048:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "id": 2746, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "9051:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2744, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2641, + "src": "9039:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address[] memory,address[] memory)" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9039:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2748, + "nodeType": "ExpressionStatement", + "src": "9039:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8831:8:2", + "parameters": { + "id": 2724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2718, + "mutability": "mutable", + "name": "a", + "nameLocation": "8857:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8840:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8840:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2717, + "nodeType": "ArrayTypeName", + "src": "8840:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2721, + "mutability": "mutable", + "name": "b", + "nameLocation": "8877:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8860:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8860:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2720, + "nodeType": "ArrayTypeName", + "src": "8860:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2723, + "mutability": "mutable", + "name": "err", + "nameLocation": "8894:3:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8880:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2722, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8880:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8839:59:2" + }, + "returnParameters": { + "id": 2725, + "nodeType": "ParameterList", + "parameters": [], + "src": "8908:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2802, + "nodeType": "FunctionDefinition", + "src": "9076:516:2", + "body": { + "id": 2801, + "nodeType": "Block", + "src": "9190:402:2", + "statements": [ + { + "assignments": [ + 2762 + ], + "declarations": [ + { + "constant": false, + "id": 2762, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9208:5:2", + "nodeType": "VariableDeclaration", + "scope": 2801, + "src": "9200:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2768, + "initialValue": { + "arguments": [ + { + "id": 2765, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9230:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2766, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9233:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2763, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9216:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9216:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9216:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9200:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2769, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9250:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2770, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9250:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2800, + "nodeType": "IfStatement", + "src": "9246:340:2", + "trueBody": { + "id": 2799, + "nodeType": "Block", + "src": "9268:318:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9303:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2772, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9287:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9287:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2775, + "nodeType": "EmitStatement", + "src": "9282:58:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2777, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9375:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2778, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9389:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2776, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9359:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9359:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2780, + "nodeType": "EmitStatement", + "src": "9354:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9426:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2783, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2781, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9410:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9410:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2785, + "nodeType": "EmitStatement", + "src": "9405:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9477:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2788, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9491:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2786, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9461:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9461:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2790, + "nodeType": "EmitStatement", + "src": "9456:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9535:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2793, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9549:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2791, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9519:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9519:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "9514:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2796, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "9569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9569:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2798, + "nodeType": "ExpressionStatement", + "src": "9569:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9085:17:2", + "parameters": { + "id": 2759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2754, + "mutability": "mutable", + "name": "a", + "nameLocation": "9120:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9112:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2753, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9112:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2756, + "mutability": "mutable", + "name": "b", + "nameLocation": "9139:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9131:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2755, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9131:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2758, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9158:8:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9150:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2757, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9150:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9102:70:2" + }, + "returnParameters": { + "id": 2760, + "nodeType": "ParameterList", + "parameters": [], + "src": "9190:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2838, + "nodeType": "FunctionDefinition", + "src": "9598:335:2", + "body": { + "id": 2837, + "nodeType": "Block", + "src": "9739:194:2", + "statements": [ + { + "assignments": [ + 2814 + ], + "declarations": [ + { + "constant": false, + "id": 2814, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9757:5:2", + "nodeType": "VariableDeclaration", + "scope": 2837, + "src": "9749:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2813, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9749:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2820, + "initialValue": { + "arguments": [ + { + "id": 2817, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9779:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2818, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9782:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2815, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9765:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9765:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9765:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9749:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2821, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2814, + "src": "9799:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2822, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9807:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9799:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2836, + "nodeType": "IfStatement", + "src": "9795:132:2", + "trueBody": { + "id": 2835, + "nodeType": "Block", + "src": "9817:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9856:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2826, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "9865:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2824, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9836:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9836:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2828, + "nodeType": "EmitStatement", + "src": "9831:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2830, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9901:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2831, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9904:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2832, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9907:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2829, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2802, + "src": "9883:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 2833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9883:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2834, + "nodeType": "ExpressionStatement", + "src": "9883:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9607:17:2", + "parameters": { + "id": 2811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2804, + "mutability": "mutable", + "name": "a", + "nameLocation": "9642:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9634:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9634:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2806, + "mutability": "mutable", + "name": "b", + "nameLocation": "9661:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9653:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9653:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2808, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9680:8:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9672:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9672:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2810, + "mutability": "mutable", + "name": "err", + "nameLocation": "9712:3:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9698:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9698:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9624:97:2" + }, + "returnParameters": { + "id": 2812, + "nodeType": "ParameterList", + "parameters": [], + "src": "9739:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2888, + "nodeType": "FunctionDefinition", + "src": "9939:513:2", + "body": { + "id": 2887, + "nodeType": "Block", + "src": "10051:401:2", + "statements": [ + { + "assignments": [ + 2848 + ], + "declarations": [ + { + "constant": false, + "id": 2848, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10069:5:2", + "nodeType": "VariableDeclaration", + "scope": 2887, + "src": "10061:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10061:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2854, + "initialValue": { + "arguments": [ + { + "id": 2851, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10091:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2852, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10094:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2849, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10077:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10077:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10061:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2855, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10111:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2856, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10119:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10111:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2886, + "nodeType": "IfStatement", + "src": "10107:339:2", + "trueBody": { + "id": 2885, + "nodeType": "Block", + "src": "10129:317:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 2859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10164:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 2858, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10148:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10148:52:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2861, + "nodeType": "EmitStatement", + "src": "10143:57:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10235:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10249:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2862, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10219:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10219:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2866, + "nodeType": "EmitStatement", + "src": "10214:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10286:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2869, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10300:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2867, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10270:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10270:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2871, + "nodeType": "EmitStatement", + "src": "10265:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10337:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2874, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10351:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2872, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10321:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10321:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2876, + "nodeType": "EmitStatement", + "src": "10316:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10395:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2879, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10409:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2877, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10379:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10379:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2881, + "nodeType": "EmitStatement", + "src": "10374:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2882, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "10429:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10429:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2884, + "nodeType": "ExpressionStatement", + "src": "10429:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9948:17:2", + "parameters": { + "id": 2845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2840, + "mutability": "mutable", + "name": "a", + "nameLocation": "9982:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9975:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2839, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9975:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2842, + "mutability": "mutable", + "name": "b", + "nameLocation": "10000:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9993:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2841, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9993:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2844, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10019:8:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "10011:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2843, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9965:68:2" + }, + "returnParameters": { + "id": 2846, + "nodeType": "ParameterList", + "parameters": [], + "src": "10051:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2924, + "nodeType": "FunctionDefinition", + "src": "10458:333:2", + "body": { + "id": 2923, + "nodeType": "Block", + "src": "10597:194:2", + "statements": [ + { + "assignments": [ + 2900 + ], + "declarations": [ + { + "constant": false, + "id": 2900, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10615:5:2", + "nodeType": "VariableDeclaration", + "scope": 2923, + "src": "10607:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10607:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2906, + "initialValue": { + "arguments": [ + { + "id": 2903, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10637:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2904, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10640:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2901, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10623:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10623:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10623:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10607:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2907, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2900, + "src": "10657:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2908, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10665:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2922, + "nodeType": "IfStatement", + "src": "10653:132:2", + "trueBody": { + "id": 2921, + "nodeType": "Block", + "src": "10675:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10714:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2912, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2896, + "src": "10723:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2910, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10694:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10694:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2914, + "nodeType": "EmitStatement", + "src": "10689:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2916, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2917, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10762:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2918, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10765:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2915, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2888, + "src": "10741:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10741:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "10741:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "10467:17:2", + "parameters": { + "id": 2897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2890, + "mutability": "mutable", + "name": "a", + "nameLocation": "10501:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10494:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2889, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10494:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "b", + "nameLocation": "10519:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10512:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2891, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10512:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2894, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10538:8:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10530:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2893, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10530:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2896, + "mutability": "mutable", + "name": "err", + "nameLocation": "10570:3:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10556:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10556:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10484:95:2" + }, + "returnParameters": { + "id": 2898, + "nodeType": "ParameterList", + "parameters": [], + "src": "10597:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2985, + "nodeType": "FunctionDefinition", + "src": "10797:766:2", + "body": { + "id": 2984, + "nodeType": "Block", + "src": "10974:589:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2933, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "10988:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "10988:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2941, + "nodeType": "IfStatement", + "src": "10984:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 2937, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11012:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2938, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11015:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2936, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11003:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 2939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11003:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2932, + "id": 2940, + "nodeType": "Return", + "src": "10996:21:2" + } + }, + { + "assignments": [ + 2943 + ], + "declarations": [ + { + "constant": false, + "id": 2943, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11081:12:2", + "nodeType": "VariableDeclaration", + "scope": 2984, + "src": "11073:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2942, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11073:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2949, + "initialValue": { + "arguments": [ + { + "id": 2946, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11117:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2947, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11120:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2944, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11096:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11096:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11096:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11073:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2950, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11137:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2951, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11152:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11137:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2983, + "nodeType": "IfStatement", + "src": "11133:424:2", + "trueBody": { + "id": 2982, + "nodeType": "Block", + "src": "11169:388:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11212:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2953, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11188:61:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2956, + "nodeType": "EmitStatement", + "src": "11183:66:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 2958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11292:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2959, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11308:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2957, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11268:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11268:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2961, + "nodeType": "EmitStatement", + "src": "11263:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 2963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11353:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2964, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11369:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2962, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11329:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11329:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2966, + "nodeType": "EmitStatement", + "src": "11324:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 2968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11414:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 2969, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11430:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11447:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2967, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11390:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11390:60:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2972, + "nodeType": "EmitStatement", + "src": "11385:65:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11493:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 2975, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11509:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11523:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2973, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11469:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11469:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "EmitStatement", + "src": "11464:62:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2979, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "11540:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11540:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2981, + "nodeType": "ExpressionStatement", + "src": "11540:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "10806:17:2", + "parameters": { + "id": 2931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2926, + "mutability": "mutable", + "name": "a", + "nameLocation": "10841:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10833:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2925, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10833:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2928, + "mutability": "mutable", + "name": "b", + "nameLocation": "10860:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10852:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10852:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2930, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "10879:15:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10871:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2929, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10871:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10823:133:2" + }, + "returnParameters": { + "id": 2932, + "nodeType": "ParameterList", + "parameters": [], + "src": "10974:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3030, + "nodeType": "FunctionDefinition", + "src": "11569:526:2", + "body": { + "id": 3029, + "nodeType": "Block", + "src": "11773:322:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2996, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11792:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11787:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3004, + "nodeType": "IfStatement", + "src": "11783:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3000, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11811:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3001, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11814:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2999, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11802:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 3002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11802:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2995, + "id": 3003, + "nodeType": "Return", + "src": "11795:21:2" + } + }, + { + "assignments": [ + 3006 + ], + "declarations": [ + { + "constant": false, + "id": 3006, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11880:12:2", + "nodeType": "VariableDeclaration", + "scope": 3029, + "src": "11872:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3005, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3012, + "initialValue": { + "arguments": [ + { + "id": 3009, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11916:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3010, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11919:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3007, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11895:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11895:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11895:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11872:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3013, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3006, + "src": "11936:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3014, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "11951:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11936:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3028, + "nodeType": "IfStatement", + "src": "11932:157:2", + "trueBody": { + "id": 3027, + "nodeType": "Block", + "src": "11968:121:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3018, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2993, + "src": "12020:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3016, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11987:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11987:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3020, + "nodeType": "EmitStatement", + "src": "11982:42:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3022, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "12056:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3023, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "12059:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3024, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "12062:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3021, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 2985, + "src": "12038:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 3025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12038:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3026, + "nodeType": "ExpressionStatement", + "src": "12038:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "11578:17:2", + "parameters": { + "id": 2994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2987, + "mutability": "mutable", + "name": "a", + "nameLocation": "11613:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11605:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11605:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2989, + "mutability": "mutable", + "name": "b", + "nameLocation": "11632:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11624:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2988, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11624:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2991, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "11651:15:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11643:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2990, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11643:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2993, + "mutability": "mutable", + "name": "err", + "nameLocation": "11746:3:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11732:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2992, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11732:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11595:160:2" + }, + "returnParameters": { + "id": 2995, + "nodeType": "ParameterList", + "parameters": [], + "src": "11773:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3091, + "nodeType": "FunctionDefinition", + "src": "12101:702:2", + "body": { + "id": 3090, + "nodeType": "Block", + "src": "12220:583:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3039, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12234:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12234:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3047, + "nodeType": "IfStatement", + "src": "12230:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3043, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12258:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3044, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12261:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3042, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12249:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12249:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3038, + "id": 3046, + "nodeType": "Return", + "src": "12242:21:2" + } + }, + { + "assignments": [ + 3049 + ], + "declarations": [ + { + "constant": false, + "id": 3049, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "12327:12:2", + "nodeType": "VariableDeclaration", + "scope": 3090, + "src": "12319:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12319:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3055, + "initialValue": { + "arguments": [ + { + "id": 3052, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12363:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3053, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12366:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3050, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "12342:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "12342:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12342:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12319:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3056, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12383:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3057, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12398:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12383:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3089, + "nodeType": "IfStatement", + "src": "12379:418:2", + "trueBody": { + "id": 3088, + "nodeType": "Block", + "src": "12415:382:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 3060, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12457:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 3059, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12434:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 3061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12434:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3062, + "nodeType": "EmitStatement", + "src": "12429:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 3064, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12535:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 3065, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12551:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3063, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12512:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12512:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3067, + "nodeType": "EmitStatement", + "src": "12507:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 3069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12595:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 3070, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12611:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3068, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12572:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12572:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3072, + "nodeType": "EmitStatement", + "src": "12567:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 3074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12655:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 3075, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12671:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12688:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3073, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12632:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12632:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3078, + "nodeType": "EmitStatement", + "src": "12627:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 3080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12733:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 3081, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12749:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3079, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12710:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12710:56:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3084, + "nodeType": "EmitStatement", + "src": "12705:61:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 3085, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "12780:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 3086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12780:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3087, + "nodeType": "ExpressionStatement", + "src": "12780:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12110:17:2", + "parameters": { + "id": 3037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3032, + "mutability": "mutable", + "name": "a", + "nameLocation": "12144:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12137:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3031, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12137:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3034, + "mutability": "mutable", + "name": "b", + "nameLocation": "12162:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12155:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3033, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12155:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3036, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12181:15:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12173:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3035, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12173:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12127:75:2" + }, + "returnParameters": { + "id": 3038, + "nodeType": "ParameterList", + "parameters": [], + "src": "12220:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3136, + "nodeType": "FunctionDefinition", + "src": "12809:467:2", + "body": { + "id": 3135, + "nodeType": "Block", + "src": "12955:321:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3102, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12969:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12974:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12969:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3110, + "nodeType": "IfStatement", + "src": "12965:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3106, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "12993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3107, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12996:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3105, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12984:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12984:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3101, + "id": 3109, + "nodeType": "Return", + "src": "12977:21:2" + } + }, + { + "assignments": [ + 3112 + ], + "declarations": [ + { + "constant": false, + "id": 3112, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "13062:12:2", + "nodeType": "VariableDeclaration", + "scope": 3135, + "src": "13054:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13054:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3118, + "initialValue": { + "arguments": [ + { + "id": 3115, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13098:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3116, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13101:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3113, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "13077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "13077:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13077:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13054:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3119, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "13118:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3120, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13133:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13118:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3134, + "nodeType": "IfStatement", + "src": "13114:156:2", + "trueBody": { + "id": 3133, + "nodeType": "Block", + "src": "13150:120:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13192:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3124, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3099, + "src": "13201:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3122, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13169:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13169:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3126, + "nodeType": "EmitStatement", + "src": "13164:41:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3128, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13237:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3129, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13240:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3130, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13243:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3127, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 3091, + "src": "13219:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 3131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13219:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3132, + "nodeType": "ExpressionStatement", + "src": "13219:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12818:17:2", + "parameters": { + "id": 3100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3093, + "mutability": "mutable", + "name": "a", + "nameLocation": "12852:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12845:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3092, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12845:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "mutability": "mutable", + "name": "b", + "nameLocation": "12870:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12863:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3094, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12863:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3097, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12889:15:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12881:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3096, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12881:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3099, + "mutability": "mutable", + "name": "err", + "nameLocation": "12928:3:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12914:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3098, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12914:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12835:102:2" + }, + "returnParameters": { + "id": 3101, + "nodeType": "ParameterList", + "parameters": [], + "src": "12955:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 1823, + "name": "DSTest", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1786, + "src": "196:6:2" + }, + "id": 1824, + "nodeType": "InheritanceSpecifier", + "src": "196:6:2" + }, + { + "baseName": { + "id": 1825, + "name": "Script", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1818, + "src": "204:6:2" + }, + "id": 1826, + "nodeType": "InheritanceSpecifier", + "src": "204:6:2" + } + ], + "canonicalName": "Test", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3137, + 1818, + 1786 + ], + "name": "Test", + "nameLocation": "188:4:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3207, + "nodeType": "ContractDefinition", + "src": "13478:984:2", + "nodes": [ + { + "id": 3144, + "nodeType": "VariableDeclaration", + "src": "13501:86:2", + "constant": true, + "functionSelector": "10332977", + "mutability": "constant", + "name": "assertionError", + "nameLocation": "13523:14:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3138, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13501:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13564:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783031", + "id": 3142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13582:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "expression": { + "id": 3139, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13540:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13540:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3151, + "nodeType": "VariableDeclaration", + "src": "13593:87:2", + "constant": true, + "functionSelector": "8995290f", + "mutability": "constant", + "name": "arithmeticError", + "nameLocation": "13615:15:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3145, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13593:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783131", + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13675:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "0x11" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + } + ], + "expression": { + "id": 3146, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13633:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13633:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13633:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3158, + "nodeType": "VariableDeclaration", + "src": "13686:85:2", + "constant": true, + "functionSelector": "fa784a44", + "mutability": "constant", + "name": "divisionError", + "nameLocation": "13708:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3152, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13686:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13748:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783132", + "id": 3156, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13766:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "0x12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "expression": { + "id": 3153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13724:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13724:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13724:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3165, + "nodeType": "VariableDeclaration", + "src": "13777:91:2", + "constant": true, + "functionSelector": "1de45560", + "mutability": "constant", + "name": "enumConversionError", + "nameLocation": "13799:19:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3159, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13845:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783231", + "id": 3163, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13863:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + }, + "value": "0x21" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + } + ], + "expression": { + "id": 3160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13821:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13821:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3164, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13821:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3172, + "nodeType": "VariableDeclaration", + "src": "13874:90:2", + "constant": true, + "functionSelector": "d160e4de", + "mutability": "constant", + "name": "encodeStorageError", + "nameLocation": "13896:18:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3166, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13874:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13941:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783232", + "id": 3170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + }, + "value": "0x22" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + } + ], + "expression": { + "id": 3167, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13917:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13917:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13917:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3179, + "nodeType": "VariableDeclaration", + "src": "13970:80:2", + "constant": true, + "functionSelector": "b22dc54d", + "mutability": "constant", + "name": "popError", + "nameLocation": "13992:8:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3173, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13970:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14027:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783331", + "id": 3177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14045:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + }, + "value": "0x31" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + } + ], + "expression": { + "id": 3174, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14003:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14003:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14003:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3186, + "nodeType": "VariableDeclaration", + "src": "14056:85:2", + "constant": true, + "functionSelector": "05ee8612", + "mutability": "constant", + "name": "indexOOBError", + "nameLocation": "14078:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14056:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14118:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783332", + "id": 3184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14136:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "0x32" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + } + ], + "expression": { + "id": 3181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14094:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14094:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14094:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3193, + "nodeType": "VariableDeclaration", + "src": "14147:88:2", + "constant": true, + "functionSelector": "986c5f68", + "mutability": "constant", + "name": "memOverflowError", + "nameLocation": "14169:16:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3187, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14147:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14212:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783431", + "id": 3191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14230:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + }, + "value": "0x41" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + } + ], + "expression": { + "id": 3188, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14188:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14188:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3200, + "nodeType": "VariableDeclaration", + "src": "14241:84:2", + "constant": true, + "functionSelector": "b67689da", + "mutability": "constant", + "name": "zeroVarError", + "nameLocation": "14263:12:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3194, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14241:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14302:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783531", + "id": 3198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14320:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + }, + "value": "0x51" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + } + ], + "expression": { + "id": 3195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14278:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14278:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14278:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3206, + "nodeType": "VariableDeclaration", + "src": "14404:47:2", + "constant": true, + "functionSelector": "ac3d92c6", + "mutability": "constant", + "name": "lowLevelError", + "nameLocation": "14426:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3201, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14404:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "", + "id": 3204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14448:2:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14442:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3202, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14442:5:2", + "typeDescriptions": {} + } + }, + "id": 3205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14442:9:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdError", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3207 + ], + "name": "stdError", + "nameLocation": "13486:8:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3235, + "nodeType": "StructDefinition", + "src": "14663:275:2", + "canonicalName": "StdStorage", + "members": [ + { + "constant": false, + "id": 3215, + "mutability": "mutable", + "name": "slots", + "nameLocation": "14755:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14687:73:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "typeName": { + "id": 3214, + "keyType": { + "id": 3208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14696:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14687:67:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "valueType": { + "id": 3213, + "keyType": { + "id": 3209, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14715:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14707:46:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + }, + "valueType": { + "id": 3212, + "keyType": { + "id": 3210, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14733:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14725:27:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 3211, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14744:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3223, + "mutability": "mutable", + "name": "finds", + "nameLocation": "14832:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14766:71:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "typeName": { + "id": 3222, + "keyType": { + "id": 3216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14775:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14766:65:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "valueType": { + "id": 3221, + "keyType": { + "id": 3217, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14794:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14786:44:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 3220, + "keyType": { + "id": 3218, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14813:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14805:24:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 3219, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14824:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3226, + "mutability": "mutable", + "name": "_keys", + "nameLocation": "14854:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14844:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3224, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14844:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3225, + "nodeType": "ArrayTypeName", + "src": "14844:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3228, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "14872:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14865:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3227, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14865:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3230, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "14890:6:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14882:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14882:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3232, + "mutability": "mutable", + "name": "_target", + "nameLocation": "14910:7:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14902:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14902:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3234, + "mutability": "mutable", + "name": "_set", + "nameLocation": "14931:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14923:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3233, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "StdStorage", + "nameLocation": "14670:10:2", + "scope": 4485, + "visibility": "public" + }, + { + "id": 4337, + "nodeType": "ContractDefinition", + "src": "14940:8872:2", + "nodes": [ + { + "id": 3245, + "nodeType": "EventDefinition", + "src": "14965:71:2", + "anonymous": false, + "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", + "name": "SlotFound", + "nameLocation": "14971:9:2", + "parameters": { + "id": 3244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3237, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "14989:3:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14981:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14981:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3239, + "indexed": false, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "15001:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14994:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3238, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14994:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3241, + "indexed": false, + "mutability": "mutable", + "name": "keysHash", + "nameLocation": "15015:8:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15007:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3240, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3243, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15030:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15025:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15025:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14980:55:2" + } + }, + { + "id": 3251, + "nodeType": "EventDefinition", + "src": "15041:51:2", + "anonymous": false, + "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", + "name": "WARNING_UninitedSlot", + "nameLocation": "15047:20:2", + "parameters": { + "id": 3250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3247, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "15076:3:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15068:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15068:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3249, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15086:4:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15081:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3248, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15067:24:2" + } + }, + { + "id": 3254, + "nodeType": "VariableDeclaration", + "src": "15098:117:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "15123:11:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15098:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 3253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15137:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "private" + }, + { + "id": 3257, + "nodeType": "VariableDeclaration", + "src": "15221:114:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MAX", + "nameLocation": "15245:10:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3255, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15221:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393637", + "id": 3256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15258:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819967_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9967" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819967" + }, + "visibility": "private" + }, + { + "id": 3274, + "nodeType": "VariableDeclaration", + "src": "15342:94:2", + "constant": true, + "mutability": "constant", + "name": "vm_std_store", + "nameLocation": "15362:12:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + }, + "typeName": { + "id": 3259, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3258, + "name": "Vm", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4964, + "src": "15342:2:2" + }, + "referencedDeclaration": 4964, + "src": "15342:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 3268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15414:17:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 3267, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15404:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15404:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15396:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15396:7:2", + "typeDescriptions": {} + } + }, + "id": 3270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15396:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15388:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3263, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "15388:7:2", + "typeDescriptions": {} + } + }, + "id": 3271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15388:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15380:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3261, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15380:7:2", + "typeDescriptions": {} + } + }, + "id": 3272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15380:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3260, + "name": "Vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4964, + "src": "15377:2:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Vm_$4964_$", + "typeString": "type(contract Vm)" + } + }, + "id": 3273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15377:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "visibility": "private" + }, + { + "id": 3292, + "nodeType": "FunctionDefinition", + "src": "15443:165:2", + "body": { + "id": 3291, + "nodeType": "Block", + "src": "15552:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3286, + "name": "sigStr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3276, + "src": "15592:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15586:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15586:5:2", + "typeDescriptions": {} + } + }, + "id": 3287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15586:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3283, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15576:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15576:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15569:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3281, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15569:6:2", + "typeDescriptions": {} + } + }, + "id": 3289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15569:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "functionReturnParameters": 3280, + "id": 3290, + "nodeType": "Return", + "src": "15562:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sigs", + "nameLocation": "15452:4:2", + "parameters": { + "id": 3277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3276, + "mutability": "mutable", + "name": "sigStr", + "nameLocation": "15480:6:2", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15466:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3275, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15466:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15456:36:2" + }, + "returnParameters": { + "id": 3280, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3279, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15540:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3278, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "15539:8:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3737, + "nodeType": "FunctionDefinition", + "src": "16122:3214:2", + "body": { + "id": 3736, + "nodeType": "Block", + "src": "16222:3114:2", + "statements": [ + { + "assignments": [ + 3302 + ], + "declarations": [ + { + "constant": false, + "id": 3302, + "mutability": "mutable", + "name": "who", + "nameLocation": "16240:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16232:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3301, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16232:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3305, + "initialValue": { + "expression": { + "id": 3303, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16246:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3304, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "16246:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16232:26:2" + }, + { + "assignments": [ + 3307 + ], + "declarations": [ + { + "constant": false, + "id": 3307, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "16275:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16268:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3306, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16268:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3310, + "initialValue": { + "expression": { + "id": 3308, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16282:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3309, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "16282:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16268:23:2" + }, + { + "assignments": [ + 3312 + ], + "declarations": [ + { + "constant": false, + "id": 3312, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "16309:11:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16301:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3311, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3315, + "initialValue": { + "expression": { + "id": 3313, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16323:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3314, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "16323:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16301:33:2" + }, + { + "assignments": [ + 3320 + ], + "declarations": [ + { + "constant": false, + "id": 3320, + "mutability": "mutable", + "name": "ins", + "nameLocation": "16361:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16344:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16344:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3319, + "nodeType": "ArrayTypeName", + "src": "16344:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3323, + "initialValue": { + "expression": { + "id": 3321, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16367:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "16367:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16344:33:2" + }, + { + "condition": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3324, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3325, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "16428:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3327, + "indexExpression": { + "id": 3326, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16439:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3329, + "indexExpression": { + "id": 3328, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16444:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3337, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3333, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16477:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3334, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16482:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16460:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16460:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16460:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3330, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16450:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16450:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3354, + "nodeType": "IfStatement", + "src": "16424:174:2", + "trueBody": { + "id": 3353, + "nodeType": "Block", + "src": "16498:100:2", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3338, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16519:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3339, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "16519:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3341, + "indexExpression": { + "id": 3340, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16530:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3343, + "indexExpression": { + "id": 3342, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16535:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3351, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3347, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16568:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3348, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16573:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3345, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16551:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16551:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16551:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3344, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16541:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16541:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3352, + "nodeType": "Return", + "src": "16512:75:2" + } + ] + } + }, + { + "assignments": [ + 3356 + ], + "declarations": [ + { + "constant": false, + "id": 3356, + "mutability": "mutable", + "name": "cald", + "nameLocation": "16620:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16607:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3355, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16607:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3364, + "initialValue": { + "arguments": [ + { + "id": 3359, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16644:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3361, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16658:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3360, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "16650:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16650:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3357, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16627:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16627:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16607:56:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3365, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16673:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "record", + "nodeType": "MemberAccess", + "referencedDeclaration": 4756, + "src": "16673:19:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 3368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16673:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3369, + "nodeType": "ExpressionStatement", + "src": "16673:21:2" + }, + { + "assignments": [ + 3371 + ], + "declarations": [ + { + "constant": false, + "id": 3371, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "16712:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16704:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3370, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16704:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3372, + "nodeType": "VariableDeclarationStatement", + "src": "16704:12:2" + }, + { + "id": 3389, + "nodeType": "Block", + "src": "16726:126:2", + "statements": [ + { + "assignments": [ + null, + 3374 + ], + "declarations": [ + null, + { + "constant": false, + "id": 3374, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "16756:4:2", + "nodeType": "VariableDeclaration", + "scope": 3389, + "src": "16743:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3373, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16743:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3379, + "initialValue": { + "arguments": [ + { + "id": 3377, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "16779:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3375, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16764:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "16764:14:2", + "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": 3378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16764:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16740:44:2" + }, + { + "expression": { + "id": 3387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3380, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "16798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3382, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3374, + "src": "16820:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16826:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3384, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16829:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16826:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3381, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "16805:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16805:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "16798:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3388, + "nodeType": "ExpressionStatement", + "src": "16798:43:2" + } + ] + }, + { + "assignments": [ + 3394, + null + ], + "declarations": [ + { + "constant": false, + "id": 3394, + "mutability": "mutable", + "name": "reads", + "nameLocation": "16880:5:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16863:22:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3392, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3393, + "nodeType": "ArrayTypeName", + "src": "16863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + null + ], + "id": 3402, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 3399, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16921:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16913:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16913:7:2", + "typeDescriptions": {} + } + }, + "id": 3400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16913:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 3395, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16891:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "accesses", + "nodeType": "MemberAccess", + "referencedDeclaration": 4767, + "src": "16891:21:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (address) external returns (bytes32[] memory,bytes32[] memory)" + } + }, + "id": 3401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16891:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32[] memory,bytes32[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16862:64:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3403, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "16940:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16940:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 3405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16956:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "16940:17:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3505, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17649:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17649:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "31", + "id": 3507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17664:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17649:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3684, + "nodeType": "Block", + "src": "18887:107:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18909:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a204e6f2073746f726167652075736520646574656374656420666f72207461726765742e", + "id": 3681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18916:66:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + }, + "value": "stdStorage find(StdStorage): No storage use detected for target." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + } + ], + "id": 3679, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18901:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18901:82:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3683, + "nodeType": "ExpressionStatement", + "src": "18901:82:2" + } + ] + }, + "id": 3685, + "nodeType": "IfStatement", + "src": "17645:1349:2", + "trueBody": { + "id": 3678, + "nodeType": "Block", + "src": "17667:1214:2", + "statements": [ + { + "body": { + "id": 3676, + "nodeType": "Block", + "src": "17724:1147:2", + "statements": [ + { + "assignments": [ + 3521 + ], + "declarations": [ + { + "constant": false, + "id": 3521, + "mutability": "mutable", + "name": "prev", + "nameLocation": "17750:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "17742:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3520, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17742:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3529, + "initialValue": { + "arguments": [ + { + "id": 3524, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17775:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3525, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17780:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3527, + "indexExpression": { + "id": 3526, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17786:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17780:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3522, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17757:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "17757:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17757:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17742:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3530, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "17811:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17827:1:2", + "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": 3532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17819:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3531, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17819:7:2", + "typeDescriptions": {} + } + }, + "id": 3534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17819:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17811:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3547, + "nodeType": "IfStatement", + "src": "17807:114:2", + "trueBody": { + "id": 3546, + "nodeType": "Block", + "src": "17831:90:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3537, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17879:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3540, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17892:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3542, + "indexExpression": { + "id": 3541, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17898:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17892:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17884:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3538, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17884:7:2", + "typeDescriptions": {} + } + }, + "id": 3543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17884:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3536, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17858:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17858:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3545, + "nodeType": "EmitStatement", + "src": "17853:49:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3551, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17982:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3552, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17987:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3554, + "indexExpression": { + "id": 3553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17987:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "1337", + "id": 3557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18005:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17997:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3555, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17997:7:2", + "typeDescriptions": {} + } + }, + "id": 3558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17997:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3548, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17963:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "17963:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17963:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3560, + "nodeType": "ExpressionStatement", + "src": "17963:53:2" + }, + { + "assignments": [ + 3562 + ], + "declarations": [ + { + "constant": false, + "id": 3562, + "mutability": "mutable", + "name": "success", + "nameLocation": "18039:7:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18034:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3561, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18034:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 3563, + "nodeType": "VariableDeclarationStatement", + "src": "18034:12:2" + }, + { + "assignments": [ + 3565 + ], + "declarations": [ + { + "constant": false, + "id": 3565, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "18077:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18064:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3564, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18064:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3566, + "nodeType": "VariableDeclarationStatement", + "src": "18064:17:2" + }, + { + "id": 3585, + "nodeType": "Block", + "src": "18099:144:2", + "statements": [ + { + "expression": { + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 3567, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18122:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 3568, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18131:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 3569, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "18121:15:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3572, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "18154:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3570, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18139:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "18139:14:2", + "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": 3573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18139:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "src": "18121:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3575, + "nodeType": "ExpressionStatement", + "src": "18121:38:2" + }, + { + "expression": { + "id": 3583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3576, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18181:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3578, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18203:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18209:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3580, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18212:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18209:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3577, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "18188:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18188:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18181:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3584, + "nodeType": "ExpressionStatement", + "src": "18181:43:2" + } + ] + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3586, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18265:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3587, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18276:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "1337", + "id": 3590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18292:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18284:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3588, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "18284:7:2", + "typeDescriptions": {} + } + }, + "id": 3591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18284:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18276:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18265:37:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3665, + "nodeType": "IfStatement", + "src": "18261:539:2", + "trueBody": { + "id": 3664, + "nodeType": "Block", + "src": "18304:496:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3595, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18410:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3596, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18415:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3600, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18448:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3601, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18453:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3598, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18431:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18431:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18431:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3597, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18421:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18421:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3606, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18476:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3608, + "indexExpression": { + "id": 3607, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18482:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18476:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18468:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18468:7:2", + "typeDescriptions": {} + } + }, + "id": 3609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18468:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3594, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "18400:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18400:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3611, + "nodeType": "EmitStatement", + "src": "18395:91:2" + }, + { + "expression": { + "id": 3633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3612, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18508:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3623, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "18508:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3624, + "indexExpression": { + "id": 3614, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18519:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3625, + "indexExpression": { + "id": 3615, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18524:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3626, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3619, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18557:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3620, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18562:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3617, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18540:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18540:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3616, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18530:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18530:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18508:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3629, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18587:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3631, + "indexExpression": { + "id": 3630, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18593:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3628, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18579:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3627, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18579:7:2", + "typeDescriptions": {} + } + }, + "id": 3632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18579:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18508:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3634, + "nodeType": "ExpressionStatement", + "src": "18508:88:2" + }, + { + "expression": { + "id": 3651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3635, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18618:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3646, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "18618:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3647, + "indexExpression": { + "id": 3637, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18629:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3648, + "indexExpression": { + "id": 3638, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18634:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3649, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3642, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18667:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3643, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18672:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3640, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18650:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18650:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18650:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3639, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18640:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18640:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18618:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18689:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "18618:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3652, + "nodeType": "ExpressionStatement", + "src": "18618:75:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3656, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3657, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18739:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3659, + "indexExpression": { + "id": 3658, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18745:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18739:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3660, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3653, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18715:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18715:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18715:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3662, + "nodeType": "ExpressionStatement", + "src": "18715:39:2" + }, + { + "id": 3663, + "nodeType": "Break", + "src": "18776:5:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3669, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18836:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3670, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18841:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3672, + "indexExpression": { + "id": 3671, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18847:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18841:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3673, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18851:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3666, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18817:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18817:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18817:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3675, + "nodeType": "ExpressionStatement", + "src": "18817:39:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3513, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17701:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3514, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17705:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17705:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17701:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3677, + "initializationExpression": { + "assignments": [ + 3510 + ], + "declarations": [ + { + "constant": false, + "id": 3510, + "mutability": "mutable", + "name": "i", + "nameLocation": "17694:1:2", + "nodeType": "VariableDeclaration", + "scope": 3677, + "src": "17686:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3509, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3512, + "initialValue": { + "hexValue": "30", + "id": 3511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17698:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "17686:13:2" + }, + "loopExpression": { + "expression": { + "id": 3518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "17719:3:2", + "subExpression": { + "id": 3517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17719:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3519, + "nodeType": "ExpressionStatement", + "src": "17719:3:2" + }, + "nodeType": "ForStatement", + "src": "17681:1190:2" + } + ] + } + }, + "id": 3686, + "nodeType": "IfStatement", + "src": "16936:2058:2", + "trueBody": { + "id": 3504, + "nodeType": "Block", + "src": "16959:680:2", + "statements": [ + { + "assignments": [ + 3408 + ], + "declarations": [ + { + "constant": false, + "id": 3408, + "mutability": "mutable", + "name": "curr", + "nameLocation": "16981:4:2", + "nodeType": "VariableDeclaration", + "scope": 3504, + "src": "16973:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3407, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16973:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3416, + "initialValue": { + "arguments": [ + { + "id": 3411, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17006:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3412, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17011:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3414, + "indexExpression": { + "hexValue": "30", + "id": 3413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17017:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17011:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3409, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16988:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "16988:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16988:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16973:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3417, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17038:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17054:1:2", + "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": 3419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17046:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3418, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17046:7:2", + "typeDescriptions": {} + } + }, + "id": 3421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17046:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17038:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3434, + "nodeType": "IfStatement", + "src": "17034:106:2", + "trueBody": { + "id": 3433, + "nodeType": "Block", + "src": "17058:82:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3424, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17102:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3427, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17115:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3429, + "indexExpression": { + "hexValue": "30", + "id": 3428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17121:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17115:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17107:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17107:7:2", + "typeDescriptions": {} + } + }, + "id": 3430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17107:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3423, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17081:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17081:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3432, + "nodeType": "EmitStatement", + "src": "17076:49:2" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3435, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "17157:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 3436, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17165:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17157:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3444, + "nodeType": "IfStatement", + "src": "17153:180:2", + "trueBody": { + "id": 3443, + "nodeType": "Block", + "src": "17171:162:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17197:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 3440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17204:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 3438, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17189:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3442, + "nodeType": "ExpressionStatement", + "src": "17189:129:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "id": 3446, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17361:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3447, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17366:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3451, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17399:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3452, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17404:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3449, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17382:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17382:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17382:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3448, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17372:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17372:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3457, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17427:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3459, + "indexExpression": { + "hexValue": "30", + "id": 3458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17433:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17427:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3456, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3455, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17419:7:2", + "typeDescriptions": {} + } + }, + "id": 3460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17419:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3445, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "17351:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17351:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3462, + "nodeType": "EmitStatement", + "src": "17346:91:2" + }, + { + "expression": { + "id": 3484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3463, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17451:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3474, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "17451:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3475, + "indexExpression": { + "id": 3465, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17462:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3476, + "indexExpression": { + "id": 3466, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17467:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3477, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3470, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17500:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3471, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17505:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3468, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17483:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17483:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17483:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3467, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17473:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17473:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17451:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3480, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17530:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3482, + "indexExpression": { + "hexValue": "30", + "id": 3481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17536:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17530:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17522:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3478, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17522:7:2", + "typeDescriptions": {} + } + }, + "id": 3483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17522:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17451:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3485, + "nodeType": "ExpressionStatement", + "src": "17451:88:2" + }, + { + "expression": { + "id": 3502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3486, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17553:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3497, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "17553:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3498, + "indexExpression": { + "id": 3488, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17564:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3499, + "indexExpression": { + "id": 3489, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3500, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3493, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17602:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3494, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17607:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17585:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17585:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3490, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17575:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17575:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17553:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17624:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "17553:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3503, + "nodeType": "ExpressionStatement", + "src": "17553:75:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3688, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19012:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3689, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "19012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3691, + "indexExpression": { + "id": 3690, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19023:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3693, + "indexExpression": { + "id": 3692, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19028:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3701, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3697, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3698, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19066:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3695, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19044:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19044:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19044:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3694, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19034:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19034:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a20536c6f74287329206e6f7420666f756e642e", + "id": 3702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19082:49:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + }, + "value": "stdStorage find(StdStorage): Slot(s) not found." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + } + ], + "id": 3687, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "19004:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19004:128:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3704, + "nodeType": "ExpressionStatement", + "src": "19004:128:2" + }, + { + "expression": { + "id": 3707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19143:19:2", + "subExpression": { + "expression": { + "id": 3705, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3706, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19150:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3708, + "nodeType": "ExpressionStatement", + "src": "19143:19:2" + }, + { + "expression": { + "id": 3711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19172:16:2", + "subExpression": { + "expression": { + "id": 3709, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19179:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3710, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19179:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3712, + "nodeType": "ExpressionStatement", + "src": "19172:16:2" + }, + { + "expression": { + "id": 3715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19198:17:2", + "subExpression": { + "expression": { + "id": 3713, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19205:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19205:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3716, + "nodeType": "ExpressionStatement", + "src": "19198:17:2" + }, + { + "expression": { + "id": 3719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19225:18:2", + "subExpression": { + "expression": { + "id": 3717, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19232:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3718, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "19232:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3720, + "nodeType": "ExpressionStatement", + "src": "19225:18:2" + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3721, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19261:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3722, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "19261:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3724, + "indexExpression": { + "id": 3723, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3726, + "indexExpression": { + "id": 3725, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19277:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3734, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3730, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19310:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3731, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19315:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19293:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19293:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19293:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3727, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19283:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19283:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3735, + "nodeType": "Return", + "src": "19254:75:2" + } + ] + }, + "documentation": { + "id": 3293, + "nodeType": "StructuredDocumentation", + "src": "15614:129:2", + "text": "@notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "find", + "nameLocation": "16131:4:2", + "parameters": { + "id": 3297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3296, + "mutability": "mutable", + "name": "self", + "nameLocation": "16164:4:2", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16145:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3295, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3294, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "16145:10:2" + }, + "referencedDeclaration": 3235, + "src": "16145:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "16135:39:2" + }, + "returnParameters": { + "id": 3300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16209:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3298, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16208:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3757, + "nodeType": "FunctionDefinition", + "src": "19342:156:2", + "body": { + "id": 3756, + "nodeType": "Block", + "src": "19438:60:2", + "statements": [ + { + "expression": { + "id": 3752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3748, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19448:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3750, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19448:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3751, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "19463:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19448:22:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3753, + "nodeType": "ExpressionStatement", + "src": "19448:22:2" + }, + { + "expression": { + "id": 3754, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19487:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3747, + "id": 3755, + "nodeType": "Return", + "src": "19480:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "target", + "nameLocation": "19351:6:2", + "parameters": { + "id": 3743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3740, + "mutability": "mutable", + "name": "self", + "nameLocation": "19377:4:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19358:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3739, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3738, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19358:10:2" + }, + "referencedDeclaration": 3235, + "src": "19358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3742, + "mutability": "mutable", + "name": "_target", + "nameLocation": "19391:7:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19383:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19383:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19357:42:2" + }, + "returnParameters": { + "id": 3747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3746, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19418:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3745, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3744, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19418:10:2" + }, + "referencedDeclaration": 3235, + "src": "19418:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19417:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3777, + "nodeType": "FunctionDefinition", + "src": "19504:143:2", + "body": { + "id": 3776, + "nodeType": "Block", + "src": "19593:54:2", + "statements": [ + { + "expression": { + "id": 3772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3768, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19603:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19603:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3771, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3762, + "src": "19615:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19603:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3773, + "nodeType": "ExpressionStatement", + "src": "19603:16:2" + }, + { + "expression": { + "id": 3774, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19636:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3767, + "id": 3775, + "nodeType": "Return", + "src": "19629:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19513:3:2", + "parameters": { + "id": 3763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3760, + "mutability": "mutable", + "name": "self", + "nameLocation": "19536:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19517:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3759, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3758, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19517:10:2" + }, + "referencedDeclaration": 3235, + "src": "19517:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3762, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19549:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19542:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3761, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "19542:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "19516:38:2" + }, + "returnParameters": { + "id": 3767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3766, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19573:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3765, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3764, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19573:10:2" + }, + "referencedDeclaration": 3235, + "src": "19573:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19572:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3799, + "nodeType": "FunctionDefinition", + "src": "19653:156:2", + "body": { + "id": 3798, + "nodeType": "Block", + "src": "19749:60:2", + "statements": [ + { + "expression": { + "id": 3794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3788, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19759:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3790, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19759:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3792, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3782, + "src": "19776:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3791, + "name": "sigs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3292, + "src": "19771:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (string memory) pure returns (bytes4)" + } + }, + "id": 3793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19771:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19759:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3795, + "nodeType": "ExpressionStatement", + "src": "19759:22:2" + }, + { + "expression": { + "id": 3796, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3787, + "id": 3797, + "nodeType": "Return", + "src": "19791:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19662:3:2", + "parameters": { + "id": 3783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3780, + "mutability": "mutable", + "name": "self", + "nameLocation": "19685:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19666:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3779, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3778, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19666:10:2" + }, + "referencedDeclaration": 3235, + "src": "19666:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3782, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19705:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19691:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19691:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19665:45:2" + }, + "returnParameters": { + "id": 3787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3786, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19729:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3785, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3784, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19729:10:2" + }, + "referencedDeclaration": 3235, + "src": "19729:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19728:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3830, + "nodeType": "FunctionDefinition", + "src": "19815:179:2", + "body": { + "id": 3829, + "nodeType": "Block", + "src": "19909:85:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3821, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3804, + "src": "19959:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19951:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3819, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "19951:7:2", + "typeDescriptions": {} + } + }, + "id": 3822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19951:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19943:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19943:7:2", + "typeDescriptions": {} + } + }, + "id": 3823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19943:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19935:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3815, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19935:7:2", + "typeDescriptions": {} + } + }, + "id": 3824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19935:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3810, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19919:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3813, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19919:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "19919:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19919:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3826, + "nodeType": "ExpressionStatement", + "src": "19919:47:2" + }, + { + "expression": { + "id": 3827, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19983:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3809, + "id": 3828, + "nodeType": "Return", + "src": "19976:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "19824:8:2", + "parameters": { + "id": 3805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3802, + "mutability": "mutable", + "name": "self", + "nameLocation": "19852:4:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19833:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3801, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3800, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19833:10:2" + }, + "referencedDeclaration": 3235, + "src": "19833:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3804, + "mutability": "mutable", + "name": "who", + "nameLocation": "19866:3:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19858:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19858:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19832:38:2" + }, + "returnParameters": { + "id": 3809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19889:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3807, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3806, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19889:10:2" + }, + "referencedDeclaration": 3235, + "src": "19889:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19888:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3855, + "nodeType": "FunctionDefinition", + "src": "20000:161:2", + "body": { + "id": 3854, + "nodeType": "Block", + "src": "20094:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 3848, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "20128:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20120:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3846, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20120:7:2", + "typeDescriptions": {} + } + }, + "id": 3849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20120:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3841, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20104:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3844, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20104:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20104:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20104:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3851, + "nodeType": "ExpressionStatement", + "src": "20104:29:2" + }, + { + "expression": { + "id": 3852, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3840, + "id": 3853, + "nodeType": "Return", + "src": "20143:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20009:8:2", + "parameters": { + "id": 3836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3833, + "mutability": "mutable", + "name": "self", + "nameLocation": "20037:4:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20018:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3832, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3831, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20018:10:2" + }, + "referencedDeclaration": 3235, + "src": "20018:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3835, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20051:3:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20043:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3834, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20043:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20017:38:2" + }, + "returnParameters": { + "id": 3840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3839, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20074:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3838, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3837, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20074:10:2" + }, + "referencedDeclaration": 3235, + "src": "20074:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20073:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3877, + "nodeType": "FunctionDefinition", + "src": "20166:152:2", + "body": { + "id": 3876, + "nodeType": "Block", + "src": "20260:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3871, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3860, + "src": "20286:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3866, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20270:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3869, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20270:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20270:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20270:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3873, + "nodeType": "ExpressionStatement", + "src": "20270:20:2" + }, + { + "expression": { + "id": 3874, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20307:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3865, + "id": 3875, + "nodeType": "Return", + "src": "20300:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20175:8:2", + "parameters": { + "id": 3861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3858, + "mutability": "mutable", + "name": "self", + "nameLocation": "20203:4:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20184:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3857, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3856, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20184:10:2" + }, + "referencedDeclaration": 3235, + "src": "20184:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3860, + "mutability": "mutable", + "name": "key", + "nameLocation": "20217:3:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20209:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3859, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "20183:38:2" + }, + "returnParameters": { + "id": 3865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20240:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3863, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3862, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20240:10:2" + }, + "referencedDeclaration": 3235, + "src": "20240:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20239:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3897, + "nodeType": "FunctionDefinition", + "src": "20324:152:2", + "body": { + "id": 3896, + "nodeType": "Block", + "src": "20418:58:2", + "statements": [ + { + "expression": { + "id": 3892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3888, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3890, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "20428:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3891, + "name": "_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3882, + "src": "20442:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20428:20:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3893, + "nodeType": "ExpressionStatement", + "src": "20428:20:2" + }, + { + "expression": { + "id": 3894, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20465:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3887, + "id": 3895, + "nodeType": "Return", + "src": "20458:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "depth", + "nameLocation": "20333:5:2", + "parameters": { + "id": 3883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3880, + "mutability": "mutable", + "name": "self", + "nameLocation": "20358:4:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20339:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3879, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3878, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20339:10:2" + }, + "referencedDeclaration": 3235, + "src": "20339:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3882, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "20372:6:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20364:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3881, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20364:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20338:41:2" + }, + "returnParameters": { + "id": 3887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20398:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3885, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3884, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20398:10:2" + }, + "referencedDeclaration": 3235, + "src": "20398:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20397:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3920, + "nodeType": "FunctionDefinition", + "src": "20482:138:2", + "body": { + "id": 3919, + "nodeType": "Block", + "src": "20552:68:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3906, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3900, + "src": "20576:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3913, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3902, + "src": "20606:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20598:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3911, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "20598:7:2", + "typeDescriptions": {} + } + }, + "id": 3914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20598:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20590:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3909, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20590:7:2", + "typeDescriptions": {} + } + }, + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20590:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20582:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3907, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20582:7:2", + "typeDescriptions": {} + } + }, + "id": 3916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20582:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3905, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20562:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20562:51:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3918, + "nodeType": "ExpressionStatement", + "src": "20562:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20491:13:2", + "parameters": { + "id": 3903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3900, + "mutability": "mutable", + "name": "self", + "nameLocation": "20524:4:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20505:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3899, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3898, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20505:10:2" + }, + "referencedDeclaration": 3235, + "src": "20505:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3902, + "mutability": "mutable", + "name": "who", + "nameLocation": "20538:3:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20530:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20530:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20504:38:2" + }, + "returnParameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [], + "src": "20552:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3937, + "nodeType": "FunctionDefinition", + "src": "20626:120:2", + "body": { + "id": 3936, + "nodeType": "Block", + "src": "20696:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3929, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3923, + "src": "20720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "id": 3932, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3925, + "src": "20734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20726:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20726:7:2", + "typeDescriptions": {} + } + }, + "id": 3933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20726:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3928, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20706:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20706:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3935, + "nodeType": "ExpressionStatement", + "src": "20706:33:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20635:13:2", + "parameters": { + "id": 3926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3923, + "mutability": "mutable", + "name": "self", + "nameLocation": "20668:4:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20649:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3922, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3921, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20649:10:2" + }, + "referencedDeclaration": 3235, + "src": "20649:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3925, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20682:3:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20674:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20674:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20648:38:2" + }, + "returnParameters": { + "id": 3927, + "nodeType": "ParameterList", + "parameters": [], + "src": "20696:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3955, + "nodeType": "FunctionDefinition", + "src": "20752:222:2", + "body": { + "id": 3954, + "nodeType": "Block", + "src": "20821:153:2", + "statements": [ + { + "assignments": [ + 3946 + ], + "declarations": [ + { + "constant": false, + "id": 3946, + "mutability": "mutable", + "name": "t", + "nameLocation": "20839:1:2", + "nodeType": "VariableDeclaration", + "scope": 3954, + "src": "20831:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3945, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3947, + "nodeType": "VariableDeclarationStatement", + "src": "20831:9:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "20902:34:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "20916:10:2", + "value": { + "name": "write", + "nodeType": "YulIdentifier", + "src": "20921:5:2" + }, + "variableNames": [ + { + "name": "t", + "nodeType": "YulIdentifier", + "src": "20916:1:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 3946, + "isOffset": false, + "isSlot": false, + "src": "20916:1:2", + "valueSize": 1 + }, + { + "declaration": 3942, + "isOffset": false, + "isSlot": false, + "src": "20921:5:2", + "valueSize": 1 + } + ], + "id": 3948, + "nodeType": "InlineAssembly", + "src": "20893:43:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3950, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3940, + "src": "20959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "id": 3951, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3946, + "src": "20965:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3949, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20945:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20945:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "ExpressionStatement", + "src": "20945:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20761:13:2", + "parameters": { + "id": 3943, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3940, + "mutability": "mutable", + "name": "self", + "nameLocation": "20794:4:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20775:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3939, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3938, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20775:10:2" + }, + "referencedDeclaration": 3235, + "src": "20775:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3942, + "mutability": "mutable", + "name": "write", + "nameLocation": "20805:5:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20800:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3941, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20800:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20774:37:2" + }, + "returnParameters": { + "id": 3944, + "nodeType": "ParameterList", + "parameters": [], + "src": "20821:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4100, + "nodeType": "FunctionDefinition", + "src": "20980:1089:2", + "body": { + "id": 4099, + "nodeType": "Block", + "src": "21072:997:2", + "statements": [ + { + "assignments": [ + 3964 + ], + "declarations": [ + { + "constant": false, + "id": 3964, + "mutability": "mutable", + "name": "who", + "nameLocation": "21090:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21082:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21082:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3967, + "initialValue": { + "expression": { + "id": 3965, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21096:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21096:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21082:26:2" + }, + { + "assignments": [ + 3969 + ], + "declarations": [ + { + "constant": false, + "id": 3969, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "21125:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21118:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3968, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "21118:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3972, + "initialValue": { + "expression": { + "id": 3970, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21132:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3971, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21132:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21118:23:2" + }, + { + "assignments": [ + 3974 + ], + "declarations": [ + { + "constant": false, + "id": 3974, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "21159:11:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21151:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21151:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3977, + "initialValue": { + "expression": { + "id": 3975, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21173:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3976, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "21173:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21151:33:2" + }, + { + "assignments": [ + 3982 + ], + "declarations": [ + { + "constant": false, + "id": 3982, + "mutability": "mutable", + "name": "ins", + "nameLocation": "21211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21194:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3980, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3981, + "nodeType": "ArrayTypeName", + "src": "21194:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3985, + "initialValue": { + "expression": { + "id": 3983, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21217:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3984, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "21217:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21194:33:2" + }, + { + "assignments": [ + 3987 + ], + "declarations": [ + { + "constant": false, + "id": 3987, + "mutability": "mutable", + "name": "cald", + "nameLocation": "21251:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21238:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21238:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3995, + "initialValue": { + "arguments": [ + { + "id": 3990, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21275:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3992, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21289:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3991, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "21281:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21281:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21258:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21258:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21258:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21238:56:2" + }, + { + "condition": { + "id": 4010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "21308:69:2", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3996, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21309:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "21309:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3999, + "indexExpression": { + "id": 3998, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 4001, + "indexExpression": { + "id": 4000, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21325:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 4009, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4005, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4006, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21363:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4003, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21341:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21341:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21341:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4002, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21331:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21331:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4016, + "nodeType": "IfStatement", + "src": "21304:110:2", + "trueBody": { + "id": 4015, + "nodeType": "Block", + "src": "21379:35:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4012, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21398:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4011, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "21393:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21393:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4014, + "nodeType": "ExpressionStatement", + "src": "21393:10:2" + } + ] + } + }, + { + "assignments": [ + 4018 + ], + "declarations": [ + { + "constant": false, + "id": 4018, + "mutability": "mutable", + "name": "slot", + "nameLocation": "21431:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21423:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4017, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21423:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4036, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 4021, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21446:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4022, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "21446:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 4024, + "indexExpression": { + "id": 4023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21457:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 4026, + "indexExpression": { + "id": 4025, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21462:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 4034, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4030, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21495:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4031, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21500:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4028, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21478:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21478:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21478:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4027, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21468:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21468:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21438:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4019, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21438:7:2", + "typeDescriptions": {} + } + }, + "id": 4035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21438:77:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21423:92:2" + }, + { + "assignments": [ + 4038 + ], + "declarations": [ + { + "constant": false, + "id": 4038, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "21534:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21526:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21526:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4039, + "nodeType": "VariableDeclarationStatement", + "src": "21526:12:2" + }, + { + "id": 4056, + "nodeType": "Block", + "src": "21548:126:2", + "statements": [ + { + "assignments": [ + null, + 4041 + ], + "declarations": [ + null, + { + "constant": false, + "id": 4041, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "21578:4:2", + "nodeType": "VariableDeclaration", + "scope": 4056, + "src": "21565:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4040, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21565:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4046, + "initialValue": { + "arguments": [ + { + "id": 4044, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3987, + "src": "21601:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 4042, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21586:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "21586:14:2", + "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": 4045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21586:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21562:44:2" + }, + { + "expression": { + "id": 4054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4047, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21620:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4049, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "21642:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 4050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21648:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 4051, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21651:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "21648:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4048, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "21627:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 4053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21620:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4055, + "nodeType": "ExpressionStatement", + "src": "21620:43:2" + } + ] + }, + { + "assignments": [ + 4058 + ], + "declarations": [ + { + "constant": false, + "id": 4058, + "mutability": "mutable", + "name": "curr", + "nameLocation": "21691:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21683:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4064, + "initialValue": { + "arguments": [ + { + "id": 4061, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21716:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4062, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21721:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4059, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21698:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "21698:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21698:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21683:43:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4065, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 4066, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4058, + "src": "21749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21741:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4074, + "nodeType": "IfStatement", + "src": "21737:172:2", + "trueBody": { + "id": 4073, + "nodeType": "Block", + "src": "21755:154:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 4069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 4070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21784:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 4068, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "21769:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21769:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4072, + "nodeType": "ExpressionStatement", + "src": "21769:129:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4078, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21937:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4079, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21942:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4080, + "name": "set", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3960, + "src": "21948:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4075, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21918:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "21918:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 4081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21918:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4082, + "nodeType": "ExpressionStatement", + "src": "21918:34:2" + }, + { + "expression": { + "id": 4085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21962:19:2", + "subExpression": { + "expression": { + "id": 4083, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21969:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4084, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21969:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4086, + "nodeType": "ExpressionStatement", + "src": "21962:19:2" + }, + { + "expression": { + "id": 4089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21991:16:2", + "subExpression": { + "expression": { + "id": 4087, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21998:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4088, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21998:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4090, + "nodeType": "ExpressionStatement", + "src": "21991:16:2" + }, + { + "expression": { + "id": 4093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22017:17:2", + "subExpression": { + "expression": { + "id": 4091, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22024:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4092, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "22024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4094, + "nodeType": "ExpressionStatement", + "src": "22017:17:2" + }, + { + "expression": { + "id": 4097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22044:18:2", + "subExpression": { + "expression": { + "id": 4095, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22051:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4096, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "22051:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4098, + "nodeType": "ExpressionStatement", + "src": "22044:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20989:13:2", + "parameters": { + "id": 3961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3958, + "mutability": "mutable", + "name": "self", + "nameLocation": "21031:4:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21012:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3957, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3956, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "21012:10:2" + }, + "referencedDeclaration": 3235, + "src": "21012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3960, + "mutability": "mutable", + "name": "set", + "nameLocation": "21053:3:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21045:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3959, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21045:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "21002:60:2" + }, + "returnParameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [], + "src": "21072:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4132, + "nodeType": "FunctionDefinition", + "src": "22075:204:2", + "body": { + "id": 4131, + "nodeType": "Block", + "src": "22145:134:2", + "statements": [ + { + "assignments": [ + 4109 + ], + "declarations": [ + { + "constant": false, + "id": 4109, + "mutability": "mutable", + "name": "t", + "nameLocation": "22163:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22155:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22155:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4112, + "initialValue": { + "expression": { + "id": 4110, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22167:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4111, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "22167:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22155:24:2" + }, + { + "assignments": [ + 4114 + ], + "declarations": [ + { + "constant": false, + "id": 4114, + "mutability": "mutable", + "name": "s", + "nameLocation": "22197:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22189:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4113, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4118, + "initialValue": { + "arguments": [ + { + "id": 4116, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22206:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4115, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "22201:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22201:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22189:22:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4123, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4109, + "src": "22257:1:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4126, + "name": "s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4114, + "src": "22268:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22260:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4124, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22260:7:2", + "typeDescriptions": {} + } + }, + "id": 4127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22260:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4121, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "22239:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "22239:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22239:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4119, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22228:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "22228:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22228:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4107, + "id": 4130, + "nodeType": "Return", + "src": "22221:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read", + "nameLocation": "22084:4:2", + "parameters": { + "id": 4104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4103, + "mutability": "mutable", + "name": "self", + "nameLocation": "22108:4:2", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22089:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4102, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4101, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22089:10:2" + }, + "referencedDeclaration": 3235, + "src": "22089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22088:25:2" + }, + "returnParameters": { + "id": 4107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4106, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22131:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4105, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "22131:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "22130:14:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "id": 4151, + "nodeType": "FunctionDefinition", + "src": "22285:131:2", + "body": { + "id": 4150, + "nodeType": "Block", + "src": "22359:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4143, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4135, + "src": "22392:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4142, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22387:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22387:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22400:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4145, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22400:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4147, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22399:9:2", + "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": 4140, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22376:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22376:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22376:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4139, + "id": 4149, + "nodeType": "Return", + "src": "22369:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bytes32", + "nameLocation": "22294:12:2", + "parameters": { + "id": 4136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4135, + "mutability": "mutable", + "name": "self", + "nameLocation": "22326:4:2", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22307:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4134, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4133, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22307:10:2" + }, + "referencedDeclaration": 3235, + "src": "22307:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22306:25:2" + }, + "returnParameters": { + "id": 4139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4138, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22350:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4137, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "22349:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4182, + "nodeType": "FunctionDefinition", + "src": "22423:279:2", + "body": { + "id": 4181, + "nodeType": "Block", + "src": "22491:211:2", + "statements": [ + { + "assignments": [ + 4160 + ], + "declarations": [ + { + "constant": false, + "id": 4160, + "mutability": "mutable", + "name": "v", + "nameLocation": "22508:1:2", + "nodeType": "VariableDeclaration", + "scope": 4181, + "src": "22501:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4159, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "22501:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4164, + "initialValue": { + "arguments": [ + { + "id": 4162, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4154, + "src": "22521:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4161, + "name": "read_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4239, + "src": "22512:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_int256_$", + "typeString": "function (struct StdStorage storage pointer) returns (int256)" + } + }, + "id": 4163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22512:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22501:25:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4165, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22540:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 4166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4170, + "nodeType": "IfStatement", + "src": "22536:24:2", + "trueBody": { + "expression": { + "hexValue": "66616c7365", + "id": 4168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22555:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 4158, + "id": 4169, + "nodeType": "Return", + "src": "22548:12:2" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4171, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22574:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 4172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22579:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "22574:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4176, + "nodeType": "IfStatement", + "src": "22570:23:2", + "trueBody": { + "expression": { + "hexValue": "74727565", + "id": 4174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22589:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 4158, + "id": 4175, + "nodeType": "Return", + "src": "22582:11:2" + } + }, + { + "expression": { + "arguments": [ + { + "hexValue": "73746453746f7261676520726561645f626f6f6c2853746453746f72616765293a2043616e6e6f74206465636f64652e204d616b65207375726520796f75206172652072656164696e67206120626f6f6c2e", + "id": 4178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22610:84:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + }, + "value": "stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + } + ], + "id": 4177, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "22603:6:2", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 4179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22603:92:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4180, + "nodeType": "ExpressionStatement", + "src": "22603:92:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bool", + "nameLocation": "22432:9:2", + "parameters": { + "id": 4155, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4154, + "mutability": "mutable", + "name": "self", + "nameLocation": "22461:4:2", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22442:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4153, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4152, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22442:10:2" + }, + "referencedDeclaration": 3235, + "src": "22442:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22441:25:2" + }, + "returnParameters": { + "id": 4158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4157, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22485:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4156, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22485:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22484:6:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4201, + "nodeType": "FunctionDefinition", + "src": "22708:131:2", + "body": { + "id": 4200, + "nodeType": "Block", + "src": "22782:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4193, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4185, + "src": "22815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4192, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22810:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22810:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22823:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22823:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4197, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22822:9:2", + "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": 4190, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22799:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22799:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22799:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 4189, + "id": 4199, + "nodeType": "Return", + "src": "22792:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_address", + "nameLocation": "22717:12:2", + "parameters": { + "id": 4186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4185, + "mutability": "mutable", + "name": "self", + "nameLocation": "22749:4:2", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22730:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4184, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4183, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22730:10:2" + }, + "referencedDeclaration": 3235, + "src": "22730:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22729:25:2" + }, + "returnParameters": { + "id": 4189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4188, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22773:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22773:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22772:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4220, + "nodeType": "FunctionDefinition", + "src": "22845:128:2", + "body": { + "id": 4219, + "nodeType": "Block", + "src": "22916:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4212, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4204, + "src": "22949:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4211, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22944:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22944:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22957:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22957:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4216, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22956:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 4209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22933:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22933:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22933:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4208, + "id": 4218, + "nodeType": "Return", + "src": "22926:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_uint", + "nameLocation": "22854:9:2", + "parameters": { + "id": 4205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4204, + "mutability": "mutable", + "name": "self", + "nameLocation": "22883:4:2", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22864:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4203, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4202, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22864:10:2" + }, + "referencedDeclaration": 3235, + "src": "22864:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22863:25:2" + }, + "returnParameters": { + "id": 4208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4207, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22907:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22907:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22906:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4239, + "nodeType": "FunctionDefinition", + "src": "22979:125:2", + "body": { + "id": 4238, + "nodeType": "Block", + "src": "23048:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4231, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "23081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4230, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "23076:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23076:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23089:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 4233, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23089:6:2", + "typeDescriptions": {} + } + } + ], + "id": 4235, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23088:8:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + ], + "expression": { + "id": 4228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23065:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "23065:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23065:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 4227, + "id": 4237, + "nodeType": "Return", + "src": "23058:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_int", + "nameLocation": "22988:8:2", + "parameters": { + "id": 4224, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4223, + "mutability": "mutable", + "name": "self", + "nameLocation": "23016:4:2", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "22997:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4222, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4221, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22997:10:2" + }, + "referencedDeclaration": 3235, + "src": "22997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22996:25:2" + }, + "returnParameters": { + "id": 4227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4226, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "23040:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4225, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23040:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "23039:8:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4295, + "nodeType": "FunctionDefinition", + "src": "23110:297:2", + "body": { + "id": 4294, + "nodeType": "Block", + "src": "23193:214:2", + "statements": [ + { + "assignments": [ + 4249 + ], + "declarations": [ + { + "constant": false, + "id": 4249, + "mutability": "mutable", + "name": "out", + "nameLocation": "23211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23203:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4248, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23203:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4250, + "nodeType": "VariableDeclarationStatement", + "src": "23203:11:2" + }, + { + "assignments": [ + 4252 + ], + "declarations": [ + { + "constant": false, + "id": 4252, + "mutability": "mutable", + "name": "max", + "nameLocation": "23233:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23225:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4251, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4261, + "initialValue": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4253, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23239:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3332", + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23250:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23239:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "expression": { + "id": 4258, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23260:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23260:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "23239:29:2", + "trueExpression": { + "hexValue": "3332", + "id": 4257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23255:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23225:43:2" + }, + { + "body": { + "id": 4290, + "nodeType": "Block", + "src": "23309:72:2", + "statements": [ + { + "expression": { + "id": 4288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4272, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23323:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4275, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23338:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4279, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4276, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4243, + "src": "23340:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4277, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23349:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23340:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23338:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30784646", + "id": 4280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23354:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xFF" + }, + "src": "23338:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 4274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23330:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4273, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23330:7:2", + "typeDescriptions": {} + } + }, + "id": 4282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23330:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4283, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23364:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "38", + "id": 4284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23368:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "23364:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 4286, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23363:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23330:40:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "23323:47:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4289, + "nodeType": "ExpressionStatement", + "src": "23323:47:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4266, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23295:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 4267, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4252, + "src": "23299:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23295:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4291, + "initializationExpression": { + "assignments": [ + 4263 + ], + "declarations": [ + { + "constant": false, + "id": 4263, + "mutability": "mutable", + "name": "i", + "nameLocation": "23288:1:2", + "nodeType": "VariableDeclaration", + "scope": 4291, + "src": "23283:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4262, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23283:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4265, + "initialValue": { + "hexValue": "30", + "id": 4264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23292:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23283:10:2" + }, + "loopExpression": { + "expression": { + "id": 4270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23304:3:2", + "subExpression": { + "id": 4269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23304:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4271, + "nodeType": "ExpressionStatement", + "src": "23304:3:2" + }, + "nodeType": "ForStatement", + "src": "23278:103:2" + }, + { + "expression": { + "id": 4292, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23397:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4247, + "id": 4293, + "nodeType": "Return", + "src": "23390:10:2" + } + ] + }, + "functionSelector": "53584939", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bytesToBytes32", + "nameLocation": "23119:14:2", + "parameters": { + "id": 4244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4241, + "mutability": "mutable", + "name": "b", + "nameLocation": "23147:1:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23134:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4240, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23134:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4243, + "mutability": "mutable", + "name": "offset", + "nameLocation": "23155:6:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23150:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23133:29:2" + }, + "returnParameters": { + "id": 4247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4246, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23184:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4245, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23184:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "23183:9:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "id": 4336, + "nodeType": "FunctionDefinition", + "src": "23413:397:2", + "body": { + "id": 4335, + "nodeType": "Block", + "src": "23490:320:2", + "statements": [ + { + "assignments": [ + 4304 + ], + "declarations": [ + { + "constant": false, + "id": 4304, + "mutability": "mutable", + "name": "result", + "nameLocation": "23513:6:2", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "23500:19:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4303, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23500:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4312, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4307, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23532:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3332", + "id": 4309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23543:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23532:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "23522:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 4305, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23526:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 4311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23522:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23500:46:2" + }, + { + "body": { + "id": 4331, + "nodeType": "Block", + "src": "23595:185:2", + "statements": [ + { + "assignments": [ + 4325 + ], + "declarations": [ + { + "constant": false, + "id": 4325, + "mutability": "mutable", + "name": "k", + "nameLocation": "23617:1:2", + "nodeType": "VariableDeclaration", + "scope": 4331, + "src": "23609:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4324, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23609:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4329, + "initialValue": { + "baseExpression": { + "id": 4326, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23621:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4328, + "indexExpression": { + "id": 4327, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23623:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23621:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23609:16:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "23695:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "23724:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23736:2:2", + "type": "", + "value": "32" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23744:2:2", + "type": "", + "value": "32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23748:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "23740:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23740:10:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23732:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23732:19:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23720:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23720:32:2" + }, + { + "name": "k", + "nodeType": "YulIdentifier", + "src": "23754:1:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "23713:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "23713:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "23713:43:2" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 4314, + "isOffset": false, + "isSlot": false, + "src": "23748:1:2", + "valueSize": 1 + }, + { + "declaration": 4325, + "isOffset": false, + "isSlot": false, + "src": "23754:1:2", + "valueSize": 1 + }, + { + "declaration": 4304, + "isOffset": false, + "isSlot": false, + "src": "23724:6:2", + "valueSize": 1 + } + ], + "id": 4330, + "nodeType": "InlineAssembly", + "src": "23686:84:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23576:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4318, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23580:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23580:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23576:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4332, + "initializationExpression": { + "assignments": [ + 4314 + ], + "declarations": [ + { + "constant": false, + "id": 4314, + "mutability": "mutable", + "name": "i", + "nameLocation": "23569:1:2", + "nodeType": "VariableDeclaration", + "scope": 4332, + "src": "23561:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23561:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4316, + "initialValue": { + "hexValue": "30", + "id": 4315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23573:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23561:13:2" + }, + "loopExpression": { + "expression": { + "id": 4322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23590:3:2", + "subExpression": { + "id": 4321, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23590:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4323, + "nodeType": "ExpressionStatement", + "src": "23590:3:2" + }, + "nodeType": "ForStatement", + "src": "23556:224:2" + }, + { + "expression": { + "id": 4333, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4304, + "src": "23797:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4302, + "id": 4334, + "nodeType": "Return", + "src": "23790:13:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "flatten", + "nameLocation": "23422:7:2", + "parameters": { + "id": 4299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4298, + "mutability": "mutable", + "name": "b", + "nameLocation": "23447:1:2", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23430:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4296, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4297, + "nodeType": "ArrayTypeName", + "src": "23430:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "23429:20:2" + }, + "returnParameters": { + "id": 4302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23472:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4300, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23472:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "23471:14:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdStorage", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4337 + ], + "name": "stdStorage", + "nameLocation": "14948:10:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 4484, + "nodeType": "ContractDefinition", + "src": "24010:1245:2", + "nodes": [ + { + "id": 4341, + "nodeType": "VariableDeclaration", + "src": "24032:115:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MIN", + "nameLocation": "24056:10:2", + "scope": 4484, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4338, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24032:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "id": 4340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24069:78:2", + "subExpression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24070:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "typeDescriptions": { + "typeIdentifier": "t_rational_minus_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const -578...(70 digits omitted)...9968" + } + }, + "visibility": "private" + }, + { + "id": 4366, + "nodeType": "FunctionDefinition", + "src": "24154:295:2", + "body": { + "id": 4365, + "nodeType": "Block", + "src": "24209:240:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4348, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24287:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4349, + "name": "INT256_MIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4341, + "src": "24292:10:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "24287:15:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4353, + "nodeType": "IfStatement", + "src": "24283:117:2", + "trueBody": { + "expression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24323:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "functionReturnParameters": 4347, + "id": 4352, + "nodeType": "Return", + "src": "24316:84:2" + } + }, + { + "expression": { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4356, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24426:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24431:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24426:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 4361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24439:2:2", + "subExpression": { + "id": 4360, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24426:15:2", + "trueExpression": { + "id": 4359, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24435:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24418:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24418:7:2", + "typeDescriptions": {} + } + }, + "id": 4363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24418:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4347, + "id": 4364, + "nodeType": "Return", + "src": "24411:31:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "abs", + "nameLocation": "24163:3:2", + "parameters": { + "id": 4344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4343, + "mutability": "mutable", + "name": "a", + "nameLocation": "24174:1:2", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24167:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4342, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24167:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24166:10:2" + }, + "returnParameters": { + "id": 4347, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4346, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24200:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24199:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4387, + "nodeType": "FunctionDefinition", + "src": "24455:138:2", + "body": { + "id": 4386, + "nodeType": "Block", + "src": "24524:69:2", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4375, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 4376, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24541:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4381, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24581:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24585:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24581:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24541:45:2", + "trueExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4378, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24561:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4379, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24565:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24561:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4374, + "id": 4385, + "nodeType": "Return", + "src": "24534:52:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24464:5:2", + "parameters": { + "id": 4371, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4368, + "mutability": "mutable", + "name": "a", + "nameLocation": "24478:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24470:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24470:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4370, + "mutability": "mutable", + "name": "b", + "nameLocation": "24489:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24481:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4369, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24481:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24469:22:2" + }, + "returnParameters": { + "id": 4374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4373, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24515:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24515:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24514:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4431, + "nodeType": "FunctionDefinition", + "src": "24599:290:2", + "body": { + "id": 4430, + "nodeType": "Block", + "src": "24666:223:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4396, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24720:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24725:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24720:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4399, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24730:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24735:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24730:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4403, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24740:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24744:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24740:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4406, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24749:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24740:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:34:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4421, + "nodeType": "IfStatement", + "src": "24716:93:2", + "trueBody": { + "id": 4420, + "nodeType": "Block", + "src": "24756:53:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4412, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24783:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 4416, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24795:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4415, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24791:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24791:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4411, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "24777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24777:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4419, + "nodeType": "Return", + "src": "24770:28:2" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 4423, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4422, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24867:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24867:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 4426, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24880:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4425, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24876:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24876:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24867:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4429, + "nodeType": "Return", + "src": "24860:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24608:5:2", + "parameters": { + "id": 4392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4389, + "mutability": "mutable", + "name": "a", + "nameLocation": "24621:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24614:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4388, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24614:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4391, + "mutability": "mutable", + "name": "b", + "nameLocation": "24631:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24624:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4390, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24624:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24613:20:2" + }, + "returnParameters": { + "id": 4395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4394, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24657:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24657:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24656:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4454, + "nodeType": "FunctionDefinition", + "src": "24895:160:2", + "body": { + "id": 4453, + "nodeType": "Block", + "src": "24971:84:2", + "statements": [ + { + "assignments": [ + 4441 + ], + "declarations": [ + { + "constant": false, + "id": 4441, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "24989:8:2", + "nodeType": "VariableDeclaration", + "scope": 4453, + "src": "24981:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4440, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24981:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4446, + "initialValue": { + "arguments": [ + { + "id": 4443, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4433, + "src": "25006:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4444, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25009:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4442, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "25000:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25000:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24981:30:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4447, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4441, + "src": "25029:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25040:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25029:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4450, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25047:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25029:19:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4439, + "id": 4452, + "nodeType": "Return", + "src": "25022:26:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "24904:12:2", + "parameters": { + "id": 4436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4433, + "mutability": "mutable", + "name": "a", + "nameLocation": "24925:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24917:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24917:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4435, + "mutability": "mutable", + "name": "b", + "nameLocation": "24936:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24928:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24928:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24916:22:2" + }, + "returnParameters": { + "id": 4439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4438, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24962:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4437, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24962:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24961:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4483, + "nodeType": "FunctionDefinition", + "src": "25061:192:2", + "body": { + "id": 4482, + "nodeType": "Block", + "src": "25135:118:2", + "statements": [ + { + "assignments": [ + 4464 + ], + "declarations": [ + { + "constant": false, + "id": 4464, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "25153:8:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25145:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4463, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25145:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4469, + "initialValue": { + "arguments": [ + { + "id": 4466, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "25170:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4467, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25173:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4465, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4431, + "src": "25164:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 4468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25164:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25145:30:2" + }, + { + "assignments": [ + 4471 + ], + "declarations": [ + { + "constant": false, + "id": 4471, + "mutability": "mutable", + "name": "absB", + "nameLocation": "25193:4:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25185:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25185:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4475, + "initialValue": { + "arguments": [ + { + "id": 4473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25204:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4472, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "25200:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25200:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25185:21:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4476, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4464, + "src": "25224:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25235:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25224:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4479, + "name": "absB", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4471, + "src": "25242:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25224:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4462, + "id": 4481, + "nodeType": "Return", + "src": "25217:29:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "25070:12:2", + "parameters": { + "id": 4459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4456, + "mutability": "mutable", + "name": "a", + "nameLocation": "25090:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25083:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4455, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25083:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4458, + "mutability": "mutable", + "name": "b", + "nameLocation": "25100:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25093:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4457, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25093:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "25082:20:2" + }, + "returnParameters": { + "id": 4462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25126:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25126:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25125:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4484 + ], + "name": "stdMath", + "nameLocation": "24018:7:2", + "scope": 4485, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 2 +} \ No newline at end of file diff --git a/getting-started/foundry/out/test.sol/stdStorage.json b/getting-started/foundry/out/test.sol/stdStorage.json new file mode 100644 index 00000000..c44ae627 --- /dev/null +++ b/getting-started/foundry/out/test.sol/stdStorage.json @@ -0,0 +1,35225 @@ +{ + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes4", + "name": "fsig", + "type": "bytes4" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "keysHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "slot", + "type": "uint256" + } + ], + "name": "SlotFound", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "who", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "slot", + "type": "uint256" + } + ], + "name": "WARNING_UninitedSlot", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "b", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "offset", + "type": "uint256" + } + ], + "name": "bytesToBytes32", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": { + "object": "0x61025961003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c8063535849391461003a575b600080fd5b61004d6100483660046100f2565b61005f565b60405190815260200160405180910390f35b60008060006020855111610074578451610077565b60205b905060005b818110156100d25761008f8160086101bd565b8661009a83886101dc565b815181106100aa576100aa6101f4565b01602001516001600160f81b031916901c9290921791806100ca8161020a565b91505061007c565b5090949350505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561010557600080fd5b823567ffffffffffffffff8082111561011d57600080fd5b818501915085601f83011261013157600080fd5b813581811115610143576101436100dc565b604051601f8201601f19908116603f0116810190838211818310171561016b5761016b6100dc565b8160405282815288602084870101111561018457600080fd5b826020860160208301376000602093820184015298969091013596505050505050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156101d7576101d76101a7565b500290565b600082198211156101ef576101ef6101a7565b500190565b634e487b7160e01b600052603260045260246000fd5b60006001820161021c5761021c6101a7565b506001019056fea26469706673582212207dc9e2b1c681fc135c20e6248a8346e1e027127165a2e6416bd481790585859064736f6c634300080d0033", + "sourceMap": "14940:8872:2:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;14940:8872:2;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c8063535849391461003a575b600080fd5b61004d6100483660046100f2565b61005f565b60405190815260200160405180910390f35b60008060006020855111610074578451610077565b60205b905060005b818110156100d25761008f8160086101bd565b8661009a83886101dc565b815181106100aa576100aa6101f4565b01602001516001600160f81b031916901c9290921791806100ca8161020a565b91505061007c565b5090949350505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561010557600080fd5b823567ffffffffffffffff8082111561011d57600080fd5b818501915085601f83011261013157600080fd5b813581811115610143576101436100dc565b604051601f8201601f19908116603f0116810190838211818310171561016b5761016b6100dc565b8160405282815288602084870101111561018457600080fd5b826020860160208301376000602093820184015298969091013596505050505050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156101d7576101d76101a7565b500290565b600082198211156101ef576101ef6101a7565b500190565b634e487b7160e01b600052603260045260246000fd5b60006001820161021c5761021c6101a7565b506001019056fea26469706673582212207dc9e2b1c681fc135c20e6248a8346e1e027127165a2e6416bd481790585859064736f6c634300080d0033", + "sourceMap": "14940:8872:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;23110:297;;;;;;:::i;:::-;;:::i;:::-;;;1304:25:9;;;1292:2;1277:18;23110:297:2;;;;;;;;23184:7;23203:11;23225;23250:2;23239:1;:8;:13;:29;;23260:1;:8;23239:29;;;23255:2;23239:29;23225:43;;23283:6;23278:103;23299:3;23295:1;:7;23278:103;;;23364:5;:1;23368;23364:5;:::i;:::-;23338:1;23340:10;23349:1;23340:6;:10;:::i;:::-;23338:13;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;;23338:13:2;23330:40;;23323:47;;;;;23304:3;;;;:::i;:::-;;;;23278:103;;;-1:-1:-1;23397:3:2;;23110:297;-1:-1:-1;;;;23110:297:2:o;14:127:9:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:999;223:6;231;284:2;272:9;263:7;259:23;255:32;252:52;;;300:1;297;290:12;252:52;340:9;327:23;369:18;410:2;402:6;399:14;396:34;;;426:1;423;416:12;396:34;464:6;453:9;449:22;439:32;;509:7;502:4;498:2;494:13;490:27;480:55;;531:1;528;521:12;480:55;567:2;554:16;589:2;585;582:10;579:36;;;595:18;;:::i;:::-;670:2;664:9;638:2;724:13;;-1:-1:-1;;720:22:9;;;744:2;716:31;712:40;700:53;;;768:18;;;788:22;;;765:46;762:72;;;814:18;;:::i;:::-;854:10;850:2;843:22;889:2;881:6;874:18;931:7;924:4;919:2;915;911:11;907:22;904:35;901:55;;;952:1;949;942:12;901:55;1012:2;1005:4;1001:2;997:13;990:4;982:6;978:17;965:50;1059:1;1052:4;1035:15;;;1031:26;;1024:37;1035:15;1118:20;;;;1105:34;;-1:-1:-1;;;;;;146:999:9:o;1340:127::-;1401:10;1396:3;1392:20;1389:1;1382:31;1432:4;1429:1;1422:15;1456:4;1453:1;1446:15;1472:168;1512:7;1578:1;1574;1570:6;1566:14;1563:1;1560:21;1555:1;1548:9;1541:17;1537:45;1534:71;;;1585:18;;:::i;:::-;-1:-1:-1;1625:9:9;;1472:168::o;1645:128::-;1685:3;1716:1;1712:6;1709:1;1706:13;1703:39;;;1722:18;;:::i;:::-;-1:-1:-1;1758:9:9;;1645:128::o;1778:127::-;1839:10;1834:3;1830:20;1827:1;1820:31;1870:4;1867:1;1860:15;1894:4;1891:1;1884:15;1910:135;1949:3;1970:17;;;1967:43;;1990:18;;:::i;:::-;-1:-1:-1;2037:1:9;2026:13;;1910:135::o", + "linkReferences": {} + }, + "methodIdentifiers": { + "bytesToBytes32(bytes,uint256)": "53584939" + }, + "ast": { + "absolutePath": "lib/forge-std/src/Test.sol", + "id": 4485, + "exportedSymbols": { + "DSTest": [ + 1786 + ], + "Script": [ + 1818 + ], + "StdStorage": [ + 3235 + ], + "Test": [ + 3137 + ], + "Vm": [ + 4964 + ], + "console": [ + 13028 + ], + "console2": [ + 21092 + ], + "stdError": [ + 3207 + ], + "stdMath": [ + 4484 + ], + "stdStorage": [ + 4337 + ] + }, + "nodeType": "SourceUnit", + "src": "38:25218:2", + "nodes": [ + { + "id": 1820, + "nodeType": "PragmaDirective", + "src": "38:31:2", + "literals": [ + "solidity", + ">=", + "0.6", + ".0", + "<", + "0.9", + ".0" + ] + }, + { + "id": 1821, + "nodeType": "ImportDirective", + "src": "71:22:2", + "absolutePath": "lib/forge-std/src/Script.sol", + "file": "./Script.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1819, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1822, + "nodeType": "ImportDirective", + "src": "94:26:2", + "absolutePath": "lib/forge-std/lib/ds-test/src/test.sol", + "file": "ds-test/test.sol", + "nameLocation": "-1:-1:-1", + "scope": 4485, + "sourceUnit": 1787, + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 3137, + "nodeType": "ContractDefinition", + "src": "170:13108:2", + "nodes": [ + { + "id": 1830, + "nodeType": "UsingForDirective", + "src": "217:32:2", + "global": false, + "libraryName": { + "id": 1827, + "name": "stdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4337, + "src": "223:10:2" + }, + "typeName": { + "id": 1829, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1828, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "238:10:2" + }, + "referencedDeclaration": 3235, + "src": "238:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + } + }, + { + "id": 1833, + "nodeType": "VariableDeclaration", + "src": "255:126:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "281:11:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1831, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "255:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 1832, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "303:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "internal" + }, + { + "id": 1836, + "nodeType": "VariableDeclaration", + "src": "388:28:2", + "constant": false, + "mutability": "mutable", + "name": "stdstore", + "nameLocation": "408:8:2", + "scope": 3137, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 1835, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 1834, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "388:10:2" + }, + "referencedDeclaration": 3235, + "src": "388:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "id": 1841, + "nodeType": "EventDefinition", + "src": "631:31:2", + "anonymous": false, + "eventSelector": "fb102865d50addddf69da9b5aa1bced66c80cf869a5c8d0471a467e18ce9cab1", + "name": "log_array", + "nameLocation": "637:9:2", + "parameters": { + "id": 1840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1839, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "657:3:2", + "nodeType": "VariableDeclaration", + "scope": 1841, + "src": "647:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1837, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "647:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1838, + "nodeType": "ArrayTypeName", + "src": "647:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "646:15:2" + } + }, + { + "id": 1846, + "nodeType": "EventDefinition", + "src": "667:30:2", + "anonymous": false, + "eventSelector": "890a82679b470f2bd82816ed9b161f97d8b967f37fa3647c21d5bf39749e2dd5", + "name": "log_array", + "nameLocation": "673:9:2", + "parameters": { + "id": 1845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1844, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "692:3:2", + "nodeType": "VariableDeclaration", + "scope": 1846, + "src": "683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1842, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "683:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1843, + "nodeType": "ArrayTypeName", + "src": "683:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "682:14:2" + } + }, + { + "id": 1851, + "nodeType": "EventDefinition", + "src": "702:31:2", + "anonymous": false, + "eventSelector": "40e1840f5769073d61bd01372d9b75baa9842d5629a0c99ff103be1178a8e9e2", + "name": "log_array", + "nameLocation": "708:9:2", + "parameters": { + "id": 1850, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1849, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "728:3:2", + "nodeType": "VariableDeclaration", + "scope": 1851, + "src": "718:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1847, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "718:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1848, + "nodeType": "ArrayTypeName", + "src": "718:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "717:15:2" + } + }, + { + "id": 1858, + "nodeType": "EventDefinition", + "src": "738:49:2", + "anonymous": false, + "eventSelector": "00aaa39c9ffb5f567a4534380c737075702e1f7f14107fc95328e3b56c0325fb", + "name": "log_named_array", + "nameLocation": "744:15:2", + "parameters": { + "id": 1857, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1853, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "767:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "760:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1852, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "760:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1856, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "782:3:2", + "nodeType": "VariableDeclaration", + "scope": 1858, + "src": "772:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 1854, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "772:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1855, + "nodeType": "ArrayTypeName", + "src": "772:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "759:27:2" + } + }, + { + "id": 1865, + "nodeType": "EventDefinition", + "src": "792:48:2", + "anonymous": false, + "eventSelector": "a73eda09662f46dde729be4611385ff34fe6c44fbbc6f7e17b042b59a3445b57", + "name": "log_named_array", + "nameLocation": "798:15:2", + "parameters": { + "id": 1864, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1860, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "821:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "814:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1859, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "814:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1863, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "835:3:2", + "nodeType": "VariableDeclaration", + "scope": 1865, + "src": "826:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 1861, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "826:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 1862, + "nodeType": "ArrayTypeName", + "src": "826:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "813:26:2" + } + }, + { + "id": 1872, + "nodeType": "EventDefinition", + "src": "845:49:2", + "anonymous": false, + "eventSelector": "3bcfb2ae2e8d132dd1fce7cf278a9a19756a9fceabe470df3bdabb4bc577d1bd", + "name": "log_named_array", + "nameLocation": "851:15:2", + "parameters": { + "id": 1871, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1867, + "indexed": false, + "mutability": "mutable", + "name": "key", + "nameLocation": "874:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "867:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1866, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "867:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1870, + "indexed": false, + "mutability": "mutable", + "name": "val", + "nameLocation": "889:3:2", + "nodeType": "VariableDeclaration", + "scope": 1872, + "src": "879:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1868, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "879:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1869, + "nodeType": "ArrayTypeName", + "src": "879:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "866:27:2" + } + }, + { + "id": 1887, + "nodeType": "FunctionDefinition", + "src": "1180:83:2", + "body": { + "id": 1886, + "nodeType": "Block", + "src": "1215:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1880, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1233:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1233:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1882, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1874, + "src": "1251:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1233:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1877, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1225:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1879, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1884, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1225:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1885, + "nodeType": "ExpressionStatement", + "src": "1225:31:2" + } + ] + }, + "functionSelector": "b9c071b4", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "skip", + "nameLocation": "1189:4:2", + "parameters": { + "id": 1875, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1874, + "mutability": "mutable", + "name": "time", + "nameLocation": "1202:4:2", + "nodeType": "VariableDeclaration", + "scope": 1887, + "src": "1194:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1873, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1193:14:2" + }, + "returnParameters": { + "id": 1876, + "nodeType": "ParameterList", + "parameters": [], + "src": "1215:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1902, + "nodeType": "FunctionDefinition", + "src": "1269:85:2", + "body": { + "id": 1901, + "nodeType": "Block", + "src": "1306:48:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1898, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 1895, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -4, + "src": "1324:5:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 1896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1324:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1897, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1889, + "src": "1342:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1324:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1892, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1316:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "warp", + "nodeType": "MemberAccess", + "referencedDeclaration": 4498, + "src": "1316:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$returns$__$", + "typeString": "function (uint256) external" + } + }, + "id": 1899, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1316:31:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1900, + "nodeType": "ExpressionStatement", + "src": "1316:31:2" + } + ] + }, + "functionSelector": "2d6c17a3", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "rewind", + "nameLocation": "1278:6:2", + "parameters": { + "id": 1890, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1889, + "mutability": "mutable", + "name": "time", + "nameLocation": "1293:4:2", + "nodeType": "VariableDeclaration", + "scope": 1902, + "src": "1285:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1888, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1285:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1284:14:2" + }, + "returnParameters": { + "id": 1891, + "nodeType": "ParameterList", + "parameters": [], + "src": "1306:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1923, + "nodeType": "FunctionDefinition", + "src": "1417:96:2", + "body": { + "id": 1922, + "nodeType": "Block", + "src": "1451:62:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1910, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1469:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1474:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1479:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1474:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1907, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1461:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1461:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1461:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1915, + "nodeType": "ExpressionStatement", + "src": "1461:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1919, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1904, + "src": "1502:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1916, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1493:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1918, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1493:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1920, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1493:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1921, + "nodeType": "ExpressionStatement", + "src": "1493:13:2" + } + ] + }, + "functionSelector": "233240ee", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1426:4:2", + "parameters": { + "id": 1905, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1904, + "mutability": "mutable", + "name": "who", + "nameLocation": "1439:3:2", + "nodeType": "VariableDeclaration", + "scope": 1923, + "src": "1431:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1903, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1431:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1430:13:2" + }, + "returnParameters": { + "id": 1906, + "nodeType": "ParameterList", + "parameters": [], + "src": "1451:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1944, + "nodeType": "FunctionDefinition", + "src": "1519:106:2", + "body": { + "id": 1943, + "nodeType": "Block", + "src": "1567:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1933, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1934, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1927, + "src": "1590:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1930, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1577:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1577:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1577:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1936, + "nodeType": "ExpressionStatement", + "src": "1577:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1940, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1925, + "src": "1614:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1937, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1605:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4704, + "src": "1605:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 1941, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1605:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1942, + "nodeType": "ExpressionStatement", + "src": "1605:13:2" + } + ] + }, + "functionSelector": "e9a79a7b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1528:4:2", + "parameters": { + "id": 1928, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1925, + "mutability": "mutable", + "name": "who", + "nameLocation": "1541:3:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1533:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1924, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1533:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1927, + "mutability": "mutable", + "name": "give", + "nameLocation": "1554:4:2", + "nodeType": "VariableDeclaration", + "scope": 1944, + "src": "1546:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1926, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1546:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1532:27:2" + }, + "returnParameters": { + "id": 1929, + "nodeType": "ParameterList", + "parameters": [], + "src": "1567:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1968, + "nodeType": "FunctionDefinition", + "src": "1631:120:2", + "body": { + "id": 1967, + "nodeType": "Block", + "src": "1681:70:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1954, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1699:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 1955, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1704:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 1956, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1709:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "1704:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1951, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1691:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1691:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1691:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1959, + "nodeType": "ExpressionStatement", + "src": "1691:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1963, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1946, + "src": "1732:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1964, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1948, + "src": "1737:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1960, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1723:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1962, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1723:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1723:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1966, + "nodeType": "ExpressionStatement", + "src": "1723:21:2" + } + ] + }, + "functionSelector": "29a9e300", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1640:4:2", + "parameters": { + "id": 1949, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1946, + "mutability": "mutable", + "name": "who", + "nameLocation": "1653:3:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1645:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1945, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1645:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1948, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1666:6:2", + "nodeType": "VariableDeclaration", + "scope": 1968, + "src": "1658:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1947, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1658:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1644:29:2" + }, + "returnParameters": { + "id": 1950, + "nodeType": "ParameterList", + "parameters": [], + "src": "1681:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 1992, + "nodeType": "FunctionDefinition", + "src": "1757:130:2", + "body": { + "id": 1991, + "nodeType": "Block", + "src": "1821:66:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 1980, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1839:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1981, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1974, + "src": "1844:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 1977, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1831:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1979, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "1831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 1982, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1831:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1983, + "nodeType": "ExpressionStatement", + "src": "1831:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 1987, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1970, + "src": "1868:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 1988, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1972, + "src": "1873:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1984, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "1859:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1986, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "prank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4716, + "src": "1859:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 1989, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1859:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1990, + "nodeType": "ExpressionStatement", + "src": "1859:21:2" + } + ] + }, + "functionSelector": "af9bbe5f", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "hoax", + "nameLocation": "1766:4:2", + "parameters": { + "id": 1975, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1970, + "mutability": "mutable", + "name": "who", + "nameLocation": "1779:3:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1771:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1969, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1771:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1972, + "mutability": "mutable", + "name": "origin", + "nameLocation": "1792:6:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1784:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1971, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1784:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1974, + "mutability": "mutable", + "name": "give", + "nameLocation": "1808:4:2", + "nodeType": "VariableDeclaration", + "scope": 1992, + "src": "1800:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1800:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "1770:43:2" + }, + "returnParameters": { + "id": 1976, + "nodeType": "ParameterList", + "parameters": [], + "src": "1821:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2013, + "nodeType": "FunctionDefinition", + "src": "1958:106:2", + "body": { + "id": 2012, + "nodeType": "Block", + "src": "1997:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2000, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2015:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2003, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2001, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2020:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2002, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2025:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2020:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 1997, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2007:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 1999, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2007:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2005, + "nodeType": "ExpressionStatement", + "src": "2007:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2009, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1994, + "src": "2053:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2006, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2039:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2039:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2039:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2011, + "nodeType": "ExpressionStatement", + "src": "2039:18:2" + } + ] + }, + "functionSelector": "6f597075", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "1967:9:2", + "parameters": { + "id": 1995, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1994, + "mutability": "mutable", + "name": "who", + "nameLocation": "1985:3:2", + "nodeType": "VariableDeclaration", + "scope": 2013, + "src": "1977:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1993, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1977:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "1976:13:2" + }, + "returnParameters": { + "id": 1996, + "nodeType": "ParameterList", + "parameters": [], + "src": "1997:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2034, + "nodeType": "FunctionDefinition", + "src": "2070:116:2", + "body": { + "id": 2033, + "nodeType": "Block", + "src": "2123:63:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2141:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2024, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "2146:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2020, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2133:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2133:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2133:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2026, + "nodeType": "ExpressionStatement", + "src": "2133:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2030, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2015, + "src": "2175:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2027, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2161:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2161:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2031, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2161:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2032, + "nodeType": "ExpressionStatement", + "src": "2161:18:2" + } + ] + }, + "functionSelector": "108554f2", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2079:9:2", + "parameters": { + "id": 2018, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2015, + "mutability": "mutable", + "name": "who", + "nameLocation": "2097:3:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2089:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2014, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2089:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "give", + "nameLocation": "2110:4:2", + "nodeType": "VariableDeclaration", + "scope": 2034, + "src": "2102:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2102:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2088:27:2" + }, + "returnParameters": { + "id": 2019, + "nodeType": "ParameterList", + "parameters": [], + "src": "2123:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2058, + "nodeType": "FunctionDefinition", + "src": "2305:130:2", + "body": { + "id": 2057, + "nodeType": "Block", + "src": "2360:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2044, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2378:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "commonType": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + }, + "id": 2047, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "31", + "id": 2045, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2383:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "nodeType": "BinaryOperation", + "operator": "<<", + "rightExpression": { + "hexValue": "313238", + "id": 2046, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2388:3:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_128_by_1", + "typeString": "int_const 128" + }, + "value": "128" + }, + "src": "2383:8:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", + "typeString": "int_const 3402...(31 digits omitted)...1456" + } + ], + "expression": { + "id": 2041, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2370:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2370:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2048, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2370:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2049, + "nodeType": "ExpressionStatement", + "src": "2370:22:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2053, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2036, + "src": "2416:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2054, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2038, + "src": "2421:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2050, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2402:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2402:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2055, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2402:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2056, + "nodeType": "ExpressionStatement", + "src": "2402:26:2" + } + ] + }, + "functionSelector": "d06d8229", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2314:9:2", + "parameters": { + "id": 2039, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2036, + "mutability": "mutable", + "name": "who", + "nameLocation": "2332:3:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2324:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2035, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2324:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2038, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2345:6:2", + "nodeType": "VariableDeclaration", + "scope": 2058, + "src": "2337:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2037, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2337:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2323:29:2" + }, + "returnParameters": { + "id": 2040, + "nodeType": "ParameterList", + "parameters": [], + "src": "2360:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2082, + "nodeType": "FunctionDefinition", + "src": "2441:140:2", + "body": { + "id": 2081, + "nodeType": "Block", + "src": "2510:71:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2070, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2528:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2071, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2064, + "src": "2533:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2067, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2520:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2069, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "2520:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2072, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2520:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2073, + "nodeType": "ExpressionStatement", + "src": "2520:18:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2077, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2060, + "src": "2562:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2078, + "name": "origin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2062, + "src": "2567:6:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2074, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2548:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2076, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4723, + "src": "2548:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address) external" + } + }, + "id": 2079, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2548:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2080, + "nodeType": "ExpressionStatement", + "src": "2548:26:2" + } + ] + }, + "functionSelector": "3bf82db1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "startHoax", + "nameLocation": "2450:9:2", + "parameters": { + "id": 2065, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2060, + "mutability": "mutable", + "name": "who", + "nameLocation": "2468:3:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2460:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2059, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2460:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2062, + "mutability": "mutable", + "name": "origin", + "nameLocation": "2481:6:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2473:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2061, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2473:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2064, + "mutability": "mutable", + "name": "give", + "nameLocation": "2497:4:2", + "nodeType": "VariableDeclaration", + "scope": 2082, + "src": "2489:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2063, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2489:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2459:43:2" + }, + "returnParameters": { + "id": 2066, + "nodeType": "ParameterList", + "parameters": [], + "src": "2510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2099, + "nodeType": "FunctionDefinition", + "src": "2587:102:2", + "body": { + "id": 2098, + "nodeType": "Block", + "src": "2630:59:2", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2087, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2640:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "stopPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4726, + "src": "2640:12:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 2090, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2640:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2091, + "nodeType": "ExpressionStatement", + "src": "2640:14:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2095, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2084, + "src": "2678:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2092, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "2664:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2094, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "startPrank", + "nodeType": "MemberAccess", + "referencedDeclaration": 4709, + "src": "2664:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$__$", + "typeString": "function (address) external" + } + }, + "id": 2096, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2664:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2097, + "nodeType": "ExpressionStatement", + "src": "2664:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "changePrank", + "nameLocation": "2596:11:2", + "parameters": { + "id": 2085, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2084, + "mutability": "mutable", + "name": "who", + "nameLocation": "2616:3:2", + "nodeType": "VariableDeclaration", + "scope": 2099, + "src": "2608:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2083, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2608:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2607:13:2" + }, + "returnParameters": { + "id": 2086, + "nodeType": "ParameterList", + "parameters": [], + "src": "2630:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2129, + "nodeType": "FunctionDefinition", + "src": "2733:341:2", + "body": { + "id": 2128, + "nodeType": "Block", + "src": "2794:280:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "5741524e494e47", + "id": 2109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2826:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + "value": "WARNING" + }, + { + "hexValue": "546573742074697028616464726573732c616464726573732c75696e74323536293a2054686520607469706020737464636865617420686173206265656e20646570726563617465642e2055736520606465616c6020696e73746561642e", + "id": 2110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2837:96:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + }, + "value": "Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_51aac253d1d3eb5d066c1c453a3853c9527c2f88e5bdf63a1c20e25e8cf24885", + "typeString": "literal_string \"WARNING\"" + }, + { + "typeIdentifier": "t_stringliteral_762cc440f1f8cee7b2ded8a4dd443d4267a1f30da9ac7fb41d8332668a3aaa5e", + "typeString": "literal_string \"Test tip(address,address,uint256): The `tip` stdcheat has been deprecated. Use `deal` instead.\"" + } + ], + "id": 2108, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "2809:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2111, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2809:125:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2112, + "nodeType": "EmitStatement", + "src": "2804:130:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2125, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2105, + "src": "3062:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2122, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2103, + "src": "3031:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2119, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2116, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2101, + "src": "2973:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2113, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "2944:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2115, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "2944:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2118, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "2944:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2121, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "2944:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2123, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2124, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "2944:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2944:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2127, + "nodeType": "ExpressionStatement", + "src": "2944:123:2" + } + ] + }, + "functionSelector": "d82555f1", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "tip", + "nameLocation": "2742:3:2", + "parameters": { + "id": 2106, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2101, + "mutability": "mutable", + "name": "token", + "nameLocation": "2754:5:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2746:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2746:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2103, + "mutability": "mutable", + "name": "to", + "nameLocation": "2769:2:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2761:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2102, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2761:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2105, + "mutability": "mutable", + "name": "give", + "nameLocation": "2781:4:2", + "nodeType": "VariableDeclaration", + "scope": 2129, + "src": "2773:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2104, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2773:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2745:41:2" + }, + "returnParameters": { + "id": 2107, + "nodeType": "ParameterList", + "parameters": [], + "src": "2794:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2144, + "nodeType": "FunctionDefinition", + "src": "3165:81:2", + "body": { + "id": 2143, + "nodeType": "Block", + "src": "3212:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2139, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2131, + "src": "3230:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2140, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2133, + "src": "3234:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2136, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "3222:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2138, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "deal", + "nodeType": "MemberAccess", + "referencedDeclaration": 4733, + "src": "3222:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256) external" + } + }, + "id": 2141, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3222:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2142, + "nodeType": "ExpressionStatement", + "src": "3222:17:2" + } + ] + }, + "functionSelector": "c88a5e6d", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3174:4:2", + "parameters": { + "id": 2134, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2131, + "mutability": "mutable", + "name": "to", + "nameLocation": "3187:2:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3179:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2130, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3179:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2133, + "mutability": "mutable", + "name": "give", + "nameLocation": "3199:4:2", + "nodeType": "VariableDeclaration", + "scope": 2144, + "src": "3191:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2132, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3191:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3178:26:2" + }, + "returnParameters": { + "id": 2135, + "nodeType": "ParameterList", + "parameters": [], + "src": "3212:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2161, + "nodeType": "FunctionDefinition", + "src": "3370:107:2", + "body": { + "id": 2160, + "nodeType": "Block", + "src": "3432:45:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2154, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2146, + "src": "3447:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2155, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2148, + "src": "3454:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 2156, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2150, + "src": "3458:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "66616c7365", + "id": 2157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3464:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2153, + "name": "deal", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2144, + 2161, + 2264 + ], + "referencedDeclaration": 2264, + "src": "3442:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$", + "typeString": "function (address,address,uint256,bool)" + } + }, + "id": 2158, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3442:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2159, + "nodeType": "ExpressionStatement", + "src": "3442:28:2" + } + ] + }, + "functionSelector": "6bce989b", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3379:4:2", + "parameters": { + "id": 2151, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2146, + "mutability": "mutable", + "name": "token", + "nameLocation": "3392:5:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3384:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2145, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3384:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2148, + "mutability": "mutable", + "name": "to", + "nameLocation": "3407:2:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3399:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2147, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3399:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2150, + "mutability": "mutable", + "name": "give", + "nameLocation": "3419:4:2", + "nodeType": "VariableDeclaration", + "scope": 2161, + "src": "3411:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2149, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3411:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3383:41:2" + }, + "returnParameters": { + "id": 2152, + "nodeType": "ParameterList", + "parameters": [], + "src": "3432:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2264, + "nodeType": "FunctionDefinition", + "src": "3483:915:2", + "body": { + "id": 2263, + "nodeType": "Block", + "src": "3558:840:2", + "statements": [ + { + "assignments": [ + null, + 2173 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2173, + "mutability": "mutable", + "name": "balData", + "nameLocation": "3615:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3602:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2172, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3602:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2182, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3660:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + }, + { + "id": 2179, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3672:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2176, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3637:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "3637:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3637:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2174, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3626:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2175, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3626:10:2", + "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": 2181, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3626:50:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3599:77:2" + }, + { + "assignments": [ + 2184 + ], + "declarations": [ + { + "constant": false, + "id": 2184, + "mutability": "mutable", + "name": "prevBal", + "nameLocation": "3694:7:2", + "nodeType": "VariableDeclaration", + "scope": 2263, + "src": "3686:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2183, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2192, + "initialValue": { + "arguments": [ + { + "id": 2187, + "name": "balData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2173, + "src": "3715:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "3725:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2188, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3725:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2190, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3724:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2185, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "3704:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "3704:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3704:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3686:48:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2205, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "3889:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "id": 2202, + "name": "to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2165, + "src": "3858:2:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783730613038323331", + "id": 2199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3824:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + }, + "value": "0x70a08231" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_1889567281_by_1", + "typeString": "int_const 1889567281" + } + ], + "expression": { + "arguments": [ + { + "id": 2196, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3800:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2193, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "3771:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2195, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "3771:28:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2197, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2198, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "3771:52:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2200, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:64:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2201, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "with_key", + "nodeType": "MemberAccess", + "referencedDeclaration": 3830, + "src": "3771:86:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2203, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:90:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2204, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "3771:117:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2206, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3771:123:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2207, + "nodeType": "ExpressionStatement", + "src": "3771:123:2" + }, + { + "condition": { + "id": 2208, + "name": "adjust", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2169, + "src": "3939:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2262, + "nodeType": "IfStatement", + "src": "3936:456:2", + "trueBody": { + "id": 2261, + "nodeType": "Block", + "src": "3946:446:2", + "statements": [ + { + "assignments": [ + null, + 2210 + ], + "declarations": [ + null, + { + "constant": false, + "id": 2210, + "mutability": "mutable", + "name": "totSupData", + "nameLocation": "3976:10:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "3963:23:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2209, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "3963:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2218, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "id": 2213, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4001:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2214, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSelector", + "nodeType": "MemberAccess", + "src": "4001:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes4) pure returns (bytes memory)" + } + }, + "id": 2216, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4001:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 2211, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "3990:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2212, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "call", + "nodeType": "MemberAccess", + "src": "3990:10:2", + "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": 2217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3990:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3960:76:2" + }, + { + "assignments": [ + 2220 + ], + "declarations": [ + { + "constant": false, + "id": 2220, + "mutability": "mutable", + "name": "totSup", + "nameLocation": "4058:6:2", + "nodeType": "VariableDeclaration", + "scope": 2261, + "src": "4050:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2219, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4050:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2228, + "initialValue": { + "arguments": [ + { + "id": 2223, + "name": "totSupData", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2210, + "src": "4078:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 2225, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "4091:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 2224, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4091:7:2", + "typeDescriptions": {} + } + } + ], + "id": 2226, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4090:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 2221, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "4067:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "4067:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 2227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4067:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4050:50:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2231, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2229, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4117:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2230, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4124:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4117:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2247, + "nodeType": "Block", + "src": "4198:59:2", + "statements": [ + { + "expression": { + "id": 2245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2240, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4216:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2243, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2241, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4227:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2242, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4234:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4227:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2244, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4226:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4216:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2246, + "nodeType": "ExpressionStatement", + "src": "4216:26:2" + } + ] + }, + "id": 2248, + "nodeType": "IfStatement", + "src": "4114:143:2", + "trueBody": { + "id": 2239, + "nodeType": "Block", + "src": "4133:59:2", + "statements": [ + { + "expression": { + "id": 2237, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2232, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4151:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2235, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2233, + "name": "prevBal", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2184, + "src": "4162:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2234, + "name": "give", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2167, + "src": "4172:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4162:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 2236, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "4161:16:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4151:26:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2238, + "nodeType": "ExpressionStatement", + "src": "4151:26:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 2258, + "name": "totSup", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2220, + "src": "4374:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "arguments": [ + { + "hexValue": "30783138313630646464", + "id": 2255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4331:10:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + }, + "value": "0x18160ddd" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_404098525_by_1", + "typeString": "int_const 404098525" + } + ], + "expression": { + "arguments": [ + { + "id": 2252, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2163, + "src": "4303:5:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 2249, + "name": "stdstore", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1836, + "src": "4270:8:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage", + "typeString": "struct StdStorage storage ref" + } + }, + "id": 2251, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3757, + "src": "4270:32:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_address_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,address) returns (struct StdStorage storage pointer)" + } + }, + "id": 2253, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2254, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3777, + "src": "4270:60:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes4_$returns$_t_struct$_StdStorage_$3235_storage_ptr_$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,bytes4) returns (struct StdStorage storage pointer)" + } + }, + "id": 2256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:72:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 2257, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "checked_write", + "nodeType": "MemberAccess", + "referencedDeclaration": 3937, + "src": "4270:103:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_StdStorage_$3235_storage_ptr_$", + "typeString": "function (struct StdStorage storage pointer,uint256)" + } + }, + "id": 2259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4270:111:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2260, + "nodeType": "ExpressionStatement", + "src": "4270:111:2" + } + ] + } + } + ] + }, + "functionSelector": "97754ae9", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deal", + "nameLocation": "3492:4:2", + "parameters": { + "id": 2170, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2163, + "mutability": "mutable", + "name": "token", + "nameLocation": "3505:5:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3497:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2162, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3497:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2165, + "mutability": "mutable", + "name": "to", + "nameLocation": "3520:2:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3512:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2164, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3512:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2167, + "mutability": "mutable", + "name": "give", + "nameLocation": "3532:4:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3524:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2166, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3524:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2169, + "mutability": "mutable", + "name": "adjust", + "nameLocation": "3543:6:2", + "nodeType": "VariableDeclaration", + "scope": 2264, + "src": "3538:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2168, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3538:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3496:54:2" + }, + "returnParameters": { + "id": 2171, + "nodeType": "ParameterList", + "parameters": [], + "src": "3558:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2328, + "nodeType": "FunctionDefinition", + "src": "4404:578:2", + "body": { + "id": 2327, + "nodeType": "Block", + "src": "4498:484:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2276, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4516:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "id": 2277, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4523:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4516:10:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "5465737420626f756e642875696e743235362c75696e743235362c75696e74323536293a204d6178206973206c657373207468616e206d696e2e", + "id": 2279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4528:60:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + }, + "value": "Test bound(uint256,uint256,uint256): Max is less than min." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_3bbfc2dadabc14e74ee28873c31ab942a6b0084199df371a57fc6e23a8b91a7d", + "typeString": "literal_string \"Test bound(uint256,uint256,uint256): Max is less than min.\"" + } + ], + "id": 2275, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "4508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2280, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4508:81:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2281, + "nodeType": "ExpressionStatement", + "src": "4508:81:2" + }, + { + "assignments": [ + 2283 + ], + "declarations": [ + { + "constant": false, + "id": 2283, + "mutability": "mutable", + "name": "size", + "nameLocation": "4608:4:2", + "nodeType": "VariableDeclaration", + "scope": 2327, + "src": "4600:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2282, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4600:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2287, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2284, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2270, + "src": "4615:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 2285, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4621:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4615:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4600:24:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2290, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2288, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4639:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2289, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4647:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "4639:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2298, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2296, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4713:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 2297, + "name": "UINT256_MAX", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1833, + "src": "4721:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4713:19:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 2319, + "nodeType": "Block", + "src": "4799:123:2", + "statements": [ + { + "expression": { + "id": 2305, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": true, + "src": "4813:6:2", + "subExpression": { + "id": 2304, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2306, + "nodeType": "ExpressionStatement", + "src": "4813:6:2" + }, + { + "assignments": [ + 2308 + ], + "declarations": [ + { + "constant": false, + "id": 2308, + "mutability": "mutable", + "name": "mod", + "nameLocation": "4865:3:2", + "nodeType": "VariableDeclaration", + "scope": 2319, + "src": "4857:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2307, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4857:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2312, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2309, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "%", + "rightExpression": { + "id": 2310, + "name": "size", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2283, + "src": "4875:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4871:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4857:22:2" + }, + { + "expression": { + "id": 2317, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2313, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4893:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2314, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4902:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 2315, + "name": "mod", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2308, + "src": "4908:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4902:9:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4893:18:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2318, + "nodeType": "ExpressionStatement", + "src": "4893:18:2" + } + ] + }, + "id": 2320, + "nodeType": "IfStatement", + "src": "4709:213:2", + "trueBody": { + "id": 2303, + "nodeType": "Block", + "src": "4742:35:2", + "statements": [ + { + "expression": { + "id": 2301, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2299, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4756:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2300, + "name": "x", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2266, + "src": "4765:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4756:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2302, + "nodeType": "ExpressionStatement", + "src": "4756:10:2" + } + ] + } + }, + "id": 2321, + "nodeType": "IfStatement", + "src": "4635:287:2", + "trueBody": { + "id": 2295, + "nodeType": "Block", + "src": "4658:37:2", + "statements": [ + { + "expression": { + "id": 2293, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 2291, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4672:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 2292, + "name": "min", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2268, + "src": "4681:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4672:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2294, + "nodeType": "ExpressionStatement", + "src": "4672:12:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "426f756e6420526573756c74", + "id": 2323, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4952:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + "value": "Bound Result" + }, + { + "id": 2324, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2273, + "src": "4968:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_237b64d156191d73cf174e4433495e27feb7a7083e87d06235be591548fb5c52", + "typeString": "literal_string \"Bound Result\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2322, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "4937:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2325, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4937:38:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2326, + "nodeType": "EmitStatement", + "src": "4932:43:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bound", + "nameLocation": "4413:5:2", + "parameters": { + "id": 2271, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2266, + "mutability": "mutable", + "name": "x", + "nameLocation": "4427:1:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4419:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2268, + "mutability": "mutable", + "name": "min", + "nameLocation": "4438:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4430:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2267, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2270, + "mutability": "mutable", + "name": "max", + "nameLocation": "4451:3:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4443:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2269, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4443:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4418:37:2" + }, + "returnParameters": { + "id": 2274, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2273, + "mutability": "mutable", + "name": "result", + "nameLocation": "4490:6:2", + "nodeType": "VariableDeclaration", + "scope": 2328, + "src": "4482:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2272, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4482:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "4481:16:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2360, + "nodeType": "FunctionDefinition", + "src": "5142:455:2", + "body": { + "id": 2359, + "nodeType": "Block", + "src": "5251:346:2", + "statements": [ + { + "assignments": [ + 2338 + ], + "declarations": [ + { + "constant": false, + "id": 2338, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5274:8:2", + "nodeType": "VariableDeclaration", + "scope": 2359, + "src": "5261:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2337, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5261:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2347, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 2343, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2330, + "src": "5313:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2341, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5302:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5302:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5302:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2345, + "name": "args", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2332, + "src": "5320:4:2", + "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": 2339, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "5285:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "5285:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2346, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5285:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5261:64:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5387:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5401:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5416:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5423:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5433:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5419:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5419:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5446:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5440:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5440:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5409:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5409:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5401:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2335, + "isOffset": false, + "isSlot": false, + "src": "5401:4:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5423:8:2", + "valueSize": 1 + }, + { + "declaration": 2338, + "isOffset": false, + "isSlot": false, + "src": "5446:8:2", + "valueSize": 1 + } + ], + "id": 2348, + "nodeType": "InlineAssembly", + "src": "5378:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2350, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2335, + "src": "5497:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2353, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5513:1:2", + "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": 2352, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2351, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5505:7:2", + "typeDescriptions": {} + } + }, + "id": 2354, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5505:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5497:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e672c6279746573293a204465706c6f796d656e74206661696c65642e", + "id": 2356, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5529:51:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + }, + "value": "Test deployCode(string,bytes): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_d1c806ce7af1725b71ce0c84a849070672773be785c276ca8554d3c1f196865d", + "typeString": "literal_string \"Test deployCode(string,bytes): Deployment failed.\"" + } + ], + "id": 2349, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5476:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2357, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5476:114:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2358, + "nodeType": "ExpressionStatement", + "src": "5476:114:2" + } + ] + }, + "functionSelector": "29ce9dde", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5151:10:2", + "parameters": { + "id": 2333, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2330, + "mutability": "mutable", + "name": "what", + "nameLocation": "5176:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5162:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2329, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5162:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2332, + "mutability": "mutable", + "name": "args", + "nameLocation": "5195:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5182:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2331, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5182:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "5161:39:2" + }, + "returnParameters": { + "id": 2336, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2335, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5241:4:2", + "nodeType": "VariableDeclaration", + "scope": 2360, + "src": "5233:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2334, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5233:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5232:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2386, + "nodeType": "FunctionDefinition", + "src": "5603:406:2", + "body": { + "id": 2385, + "nodeType": "Block", + "src": "5693:316:2", + "statements": [ + { + "assignments": [ + 2368 + ], + "declarations": [ + { + "constant": false, + "id": 2368, + "mutability": "mutable", + "name": "bytecode", + "nameLocation": "5716:8:2", + "nodeType": "VariableDeclaration", + "scope": 2385, + "src": "5703:21:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2367, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "5703:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 2373, + "initialValue": { + "arguments": [ + { + "id": 2371, + "name": "what", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2362, + "src": "5738:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "id": 2369, + "name": "vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1817, + "src": "5727:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 2370, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "getCode", + "nodeType": "MemberAccess", + "referencedDeclaration": 4837, + "src": "5727:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) external returns (bytes memory)" + } + }, + "id": 2372, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5727:16:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5703:40:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "5805:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5819:55:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5834:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5841:8:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5851:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5837:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5837:19:2" + }, + { + "arguments": [ + { + "name": "bytecode", + "nodeType": "YulIdentifier", + "src": "5864:8:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5858:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "5858:15:2" + } + ], + "functionName": { + "name": "create", + "nodeType": "YulIdentifier", + "src": "5827:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5827:47:2" + }, + "variableNames": [ + { + "name": "addr", + "nodeType": "YulIdentifier", + "src": "5819:4:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 2365, + "isOffset": false, + "isSlot": false, + "src": "5819:4:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5841:8:2", + "valueSize": 1 + }, + { + "declaration": 2368, + "isOffset": false, + "isSlot": false, + "src": "5864:8:2", + "valueSize": 1 + } + ], + "id": 2374, + "nodeType": "InlineAssembly", + "src": "5796:88:2" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 2381, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2376, + "name": "addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2365, + "src": "5915:4:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 2379, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5931:1:2", + "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": 2378, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "5923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 2377, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5923:7:2", + "typeDescriptions": {} + } + }, + "id": 2380, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5923:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "5915:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "54657374206465706c6f79436f646528737472696e67293a204465706c6f796d656e74206661696c65642e", + "id": 2382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5947:45:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + }, + "value": "Test deployCode(string): Deployment failed." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b9fd17b1c001ca1277bfc68fcfcc57948bec4ffe1adf822157bd27978fa551cb", + "typeString": "literal_string \"Test deployCode(string): Deployment failed.\"" + } + ], + "id": 2375, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "5894:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 2383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "5894:108:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2384, + "nodeType": "ExpressionStatement", + "src": "5894:108:2" + } + ] + }, + "functionSelector": "9a8325a0", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "deployCode", + "nameLocation": "5612:10:2", + "parameters": { + "id": 2363, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2362, + "mutability": "mutable", + "name": "what", + "nameLocation": "5637:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5623:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2361, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "5623:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "5622:20:2" + }, + "returnParameters": { + "id": 2366, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2365, + "mutability": "mutable", + "name": "addr", + "nameLocation": "5683:4:2", + "nodeType": "VariableDeclaration", + "scope": 2386, + "src": "5675:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2364, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5675:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5674:14:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "id": 2400, + "nodeType": "FunctionDefinition", + "src": "6229:118:2", + "body": { + "id": 2399, + "nodeType": "Block", + "src": "6279:68:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2392, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6311:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2393, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2388, + "src": "6320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2391, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6294:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2394, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6294:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2395, + "nodeType": "EmitStatement", + "src": "6289:35:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2396, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6334:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2397, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6334:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2398, + "nodeType": "ExpressionStatement", + "src": "6334:6:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "fail", + "nameLocation": "6238:4:2", + "parameters": { + "id": 2389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2388, + "mutability": "mutable", + "name": "err", + "nameLocation": "6257:3:2", + "nodeType": "VariableDeclaration", + "scope": 2400, + "src": "6243:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2387, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6243:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6242:19:2" + }, + "returnParameters": { + "id": 2390, + "nodeType": "ParameterList", + "parameters": [], + "src": "6279:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2411, + "nodeType": "FunctionDefinition", + "src": "6353:83:2", + "body": { + "id": 2410, + "nodeType": "Block", + "src": "6402:34:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2407, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6423:5:2", + "subExpression": { + "id": 2406, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2402, + "src": "6424:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2405, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 269, + "src": "6412:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$returns$__$", + "typeString": "function (bool)" + } + }, + "id": 2408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6412:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2409, + "nodeType": "ExpressionStatement", + "src": "6412:17:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6362:11:2", + "parameters": { + "id": 2403, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2402, + "mutability": "mutable", + "name": "data", + "nameLocation": "6379:4:2", + "nodeType": "VariableDeclaration", + "scope": 2411, + "src": "6374:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2401, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6374:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6373:11:2" + }, + "returnParameters": { + "id": 2404, + "nodeType": "ParameterList", + "parameters": [], + "src": "6402:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2425, + "nodeType": "FunctionDefinition", + "src": "6442:107:2", + "body": { + "id": 2424, + "nodeType": "Block", + "src": "6510:39:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "6531:5:2", + "subExpression": { + "id": 2419, + "name": "data", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2413, + "src": "6532:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2421, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2415, + "src": "6538:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2418, + "name": "assertTrue", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 269, + 290 + ], + "referencedDeclaration": 290, + "src": "6520:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory)" + } + }, + "id": 2422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6520:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2423, + "nodeType": "ExpressionStatement", + "src": "6520:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertFalse", + "nameLocation": "6451:11:2", + "parameters": { + "id": 2416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2413, + "mutability": "mutable", + "name": "data", + "nameLocation": "6468:4:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6463:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2412, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6463:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2415, + "mutability": "mutable", + "name": "err", + "nameLocation": "6488:3:2", + "nodeType": "VariableDeclaration", + "scope": 2425, + "src": "6474:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2414, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6474:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6462:30:2" + }, + "returnParameters": { + "id": 2417, + "nodeType": "ParameterList", + "parameters": [], + "src": "6510:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2461, + "nodeType": "FunctionDefinition", + "src": "6555:326:2", + "body": { + "id": 2460, + "nodeType": "Block", + "src": "6598:283:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2434, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2432, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6612:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2433, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6617:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6612:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2459, + "nodeType": "IfStatement", + "src": "6608:267:2", + "trueBody": { + "id": 2458, + "nodeType": "Block", + "src": "6620:255:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b626f6f6c5d", + "id": 2436, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6659:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + }, + "value": "Error: a == b not satisfied [bool]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_8b48ec9ac4dc7123ad32509232067c63ebae61bff18d5e06bf4dea2a25240ed2", + "typeString": "literal_string \"Error: a == b not satisfied [bool]\"" + } + ], + "id": 2435, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "6639:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6639:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2438, + "nodeType": "EmitStatement", + "src": "6634:62:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6735:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "condition": { + "id": 2441, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2429, + "src": "6749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2443, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6762:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2444, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6749:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2442, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6753:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2439, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6715:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6715:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2446, + "nodeType": "EmitStatement", + "src": "6710:60:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6809:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "condition": { + "id": 2449, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2427, + "src": "6823:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "hexValue": "66616c7365", + "id": 2451, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6836:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ba9154e0baa69c78e0ca563b867df81bae9d177c4ea1452c35c84386a70f0f7a", + "typeString": "literal_string \"false\"" + }, + "value": "false" + }, + "id": 2452, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "6823:20:2", + "trueExpression": { + "hexValue": "74727565", + "id": 2450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6827:6:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6273151f959616268004b58dbb21e5c851b7b8d04498b4aabee12291d22fc034", + "typeString": "literal_string \"true\"" + }, + "value": "true" + }, + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2447, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6789:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6789:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2454, + "nodeType": "EmitStatement", + "src": "6784:60:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2455, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "6858:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6858:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2457, + "nodeType": "ExpressionStatement", + "src": "6858:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6564:8:2", + "parameters": { + "id": 2430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2427, + "mutability": "mutable", + "name": "a", + "nameLocation": "6578:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6573:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2426, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6573:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2429, + "mutability": "mutable", + "name": "b", + "nameLocation": "6586:1:2", + "nodeType": "VariableDeclaration", + "scope": 2461, + "src": "6581:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6581:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "6572:16:2" + }, + "returnParameters": { + "id": 2431, + "nodeType": "ParameterList", + "parameters": [], + "src": "6598:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2486, + "nodeType": "FunctionDefinition", + "src": "6887:178:2", + "body": { + "id": 2485, + "nodeType": "Block", + "src": "6949:116:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 2472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2470, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "6963:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 2471, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "6968:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "6963:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2484, + "nodeType": "IfStatement", + "src": "6959:100:2", + "trueBody": { + "id": 2483, + "nodeType": "Block", + "src": "6971:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2474, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2475, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2467, + "src": "7016:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2473, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "6990:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2476, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6990:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2477, + "nodeType": "EmitStatement", + "src": "6985:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2479, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2463, + "src": "7043:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 2480, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2465, + "src": "7046:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 2478, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2461, + "src": "7034:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bool_$_t_bool_$returns$__$", + "typeString": "function (bool,bool)" + } + }, + "id": 2481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7034:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2482, + "nodeType": "ExpressionStatement", + "src": "7034:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "6896:8:2", + "parameters": { + "id": 2468, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2463, + "mutability": "mutable", + "name": "a", + "nameLocation": "6910:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6905:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2462, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6905:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2465, + "mutability": "mutable", + "name": "b", + "nameLocation": "6918:1:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6913:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 2464, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6913:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2467, + "mutability": "mutable", + "name": "err", + "nameLocation": "6935:3:2", + "nodeType": "VariableDeclaration", + "scope": 2486, + "src": "6921:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2466, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6921:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "6904:35:2" + }, + "returnParameters": { + "id": 2469, + "nodeType": "ParameterList", + "parameters": [], + "src": "6949:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2499, + "nodeType": "FunctionDefinition", + "src": "7071:91:2", + "body": { + "id": 2498, + "nodeType": "Block", + "src": "7130:32:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2494, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2488, + "src": "7150:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2495, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2490, + "src": "7153:1:2", + "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" + } + ], + "id": 2493, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1758, + "src": "7140:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory)" + } + }, + "id": 2496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7140:15:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2497, + "nodeType": "ExpressionStatement", + "src": "7140:15:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7080:8:2", + "parameters": { + "id": 2491, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2488, + "mutability": "mutable", + "name": "a", + "nameLocation": "7102:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7089:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2487, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7089:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2490, + "mutability": "mutable", + "name": "b", + "nameLocation": "7118:1:2", + "nodeType": "VariableDeclaration", + "scope": 2499, + "src": "7105:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2489, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7105:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "7088:32:2" + }, + "returnParameters": { + "id": 2492, + "nodeType": "ParameterList", + "parameters": [], + "src": "7130:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2515, + "nodeType": "FunctionDefinition", + "src": "7168:115:2", + "body": { + "id": 2514, + "nodeType": "Block", + "src": "7246:37:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 2509, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2501, + "src": "7266:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2510, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2503, + "src": "7269:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "id": 2511, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2505, + "src": "7272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2508, + "name": "assertEq0", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1758, + 1785 + ], + "referencedDeclaration": 1785, + "src": "7256:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bytes memory,bytes memory,string memory)" + } + }, + "id": 2512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7256:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2513, + "nodeType": "ExpressionStatement", + "src": "7256:20:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7177:8:2", + "parameters": { + "id": 2506, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2501, + "mutability": "mutable", + "name": "a", + "nameLocation": "7199:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7186:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2500, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7186:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2503, + "mutability": "mutable", + "name": "b", + "nameLocation": "7215:1:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7202:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 2502, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "7202:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2505, + "mutability": "mutable", + "name": "err", + "nameLocation": "7232:3:2", + "nodeType": "VariableDeclaration", + "scope": 2515, + "src": "7218:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2504, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7218:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "7185:51:2" + }, + "returnParameters": { + "id": 2507, + "nodeType": "ParameterList", + "parameters": [], + "src": "7246:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2557, + "nodeType": "FunctionDefinition", + "src": "7289:336:2", + "body": { + "id": 2556, + "nodeType": "Block", + "src": "7356:269:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2527, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7391:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2525, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7380:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7380:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7380:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2524, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7370:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7370:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2533, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7419:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2531, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7408:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7408:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2534, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7408:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2530, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7398:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7398:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7370:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2555, + "nodeType": "IfStatement", + "src": "7366:253:2", + "trueBody": { + "id": 2554, + "nodeType": "Block", + "src": "7424:195:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b75696e745b5d5d", + "id": 2538, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7447:38:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + }, + "value": "Error: a == b not satisfied [uint[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_521d63632bd73b6c06245b96e4e8f1b767ee309607c65899b409e5c9e6c384eb", + "typeString": "literal_string \"Error: a == b not satisfied [uint[]]\"" + } + ], + "id": 2537, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7443:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2539, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7443:43:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2540, + "nodeType": "EmitStatement", + "src": "7438:48:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2542, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7521:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2543, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2521, + "src": "7535:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2541, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7505:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7505:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2545, + "nodeType": "EmitStatement", + "src": "7500:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2547, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7572:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2548, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2518, + "src": "7586:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2546, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1858, + "src": "7556:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,uint256[] memory)" + } + }, + "id": 2549, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7556:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2550, + "nodeType": "EmitStatement", + "src": "7551:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2551, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7602:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2552, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7602:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2553, + "nodeType": "ExpressionStatement", + "src": "7602:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7298:8:2", + "parameters": { + "id": 2522, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2518, + "mutability": "mutable", + "name": "a", + "nameLocation": "7324:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7307:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2516, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7307:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2517, + "nodeType": "ArrayTypeName", + "src": "7307:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2521, + "mutability": "mutable", + "name": "b", + "nameLocation": "7344:1:2", + "nodeType": "VariableDeclaration", + "scope": 2557, + "src": "7327:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2519, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7327:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2520, + "nodeType": "ArrayTypeName", + "src": "7327:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7306:40:2" + }, + "returnParameters": { + "id": 2523, + "nodeType": "ParameterList", + "parameters": [], + "src": "7356:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2599, + "nodeType": "FunctionDefinition", + "src": "7631:333:2", + "body": { + "id": 2598, + "nodeType": "Block", + "src": "7696:268:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2578, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2569, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7731:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2567, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7720:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2568, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7720:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2570, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7720:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2566, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7710:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7710:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2575, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2573, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "7748:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2574, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "7748:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2576, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7748:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2572, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "7738:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2577, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7738:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "7710:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2597, + "nodeType": "IfStatement", + "src": "7706:252:2", + "trueBody": { + "id": 2596, + "nodeType": "Block", + "src": "7764:194:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b696e745b5d5d", + "id": 2580, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7787:37:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + }, + "value": "Error: a == b not satisfied [int[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_6c8a6638f7c95c9ee18ffcfc37ffe04d6270c2db7493e9b7a14add834054a5f5", + "typeString": "literal_string \"Error: a == b not satisfied [int[]]\"" + } + ], + "id": 2579, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "7783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7783:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2582, + "nodeType": "EmitStatement", + "src": "7778:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2584, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7860:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2585, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2563, + "src": "7874:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2583, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7844:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2586, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7844:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2587, + "nodeType": "EmitStatement", + "src": "7839:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7911:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2590, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2560, + "src": "7925:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2588, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1865, + "src": "7895:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,int256[] memory)" + } + }, + "id": 2591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7895:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2592, + "nodeType": "EmitStatement", + "src": "7890:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2593, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "7941:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7941:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2595, + "nodeType": "ExpressionStatement", + "src": "7941:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7640:8:2", + "parameters": { + "id": 2564, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2560, + "mutability": "mutable", + "name": "a", + "nameLocation": "7665:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7649:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2558, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7649:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2559, + "nodeType": "ArrayTypeName", + "src": "7649:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2563, + "mutability": "mutable", + "name": "b", + "nameLocation": "7684:1:2", + "nodeType": "VariableDeclaration", + "scope": 2599, + "src": "7668:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2561, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "7668:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2562, + "nodeType": "ArrayTypeName", + "src": "7668:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + } + ], + "src": "7648:38:2" + }, + "returnParameters": { + "id": 2565, + "nodeType": "ParameterList", + "parameters": [], + "src": "7696:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2641, + "nodeType": "FunctionDefinition", + "src": "7970:339:2", + "body": { + "id": 2640, + "nodeType": "Block", + "src": "8037:272:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2620, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2611, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8072:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2609, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8061:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8061:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2608, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8051:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2613, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8051:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2617, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8100:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2615, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8089:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2616, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2618, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8089:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2614, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8079:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2619, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8079:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8051:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2639, + "nodeType": "IfStatement", + "src": "8047:256:2", + "trueBody": { + "id": 2638, + "nodeType": "Block", + "src": "8105:198:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061203d3d2062206e6f7420736174697366696564205b616464726573735b5d5d", + "id": 2622, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8128:41:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + }, + "value": "Error: a == b not satisfied [address[]]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_18b6dc04296758144a4e9b271bd3d79214335bb195df00f93d1706586d5041f8", + "typeString": "literal_string \"Error: a == b not satisfied [address[]]\"" + } + ], + "id": 2621, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "8124:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2623, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8124:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2624, + "nodeType": "EmitStatement", + "src": "8119:51:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2626, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8205:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2627, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2605, + "src": "8219:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2625, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8189:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2628, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8189:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2629, + "nodeType": "EmitStatement", + "src": "8184:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2631, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8256:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2632, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2602, + "src": "8270:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2630, + "name": "log_named_array", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1858, + 1865, + 1872 + ], + "referencedDeclaration": 1872, + "src": "8240:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (string memory,address[] memory)" + } + }, + "id": 2633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8240:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2634, + "nodeType": "EmitStatement", + "src": "8235:37:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2635, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "8286:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2636, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8286:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2637, + "nodeType": "ExpressionStatement", + "src": "8286:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "7979:8:2", + "parameters": { + "id": 2606, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2602, + "mutability": "mutable", + "name": "a", + "nameLocation": "8005:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "7988:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2600, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7988:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2601, + "nodeType": "ArrayTypeName", + "src": "7988:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2605, + "mutability": "mutable", + "name": "b", + "nameLocation": "8025:1:2", + "nodeType": "VariableDeclaration", + "scope": 2641, + "src": "8008:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2603, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8008:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2604, + "nodeType": "ArrayTypeName", + "src": "8008:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "7987:40:2" + }, + "returnParameters": { + "id": 2607, + "nodeType": "ParameterList", + "parameters": [], + "src": "8037:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2678, + "nodeType": "FunctionDefinition", + "src": "8315:248:2", + "body": { + "id": 2677, + "nodeType": "Block", + "src": "8401:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2664, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2655, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8436:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2653, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8425:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8425:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2656, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8425:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2652, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8415:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2657, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8415:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2661, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8464:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "expression": { + "id": 2659, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8453:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2660, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8453:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2662, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8453:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2658, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8443:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2663, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8443:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8415:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2676, + "nodeType": "IfStatement", + "src": "8411:146:2", + "trueBody": { + "id": 2675, + "nodeType": "Block", + "src": "8469:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8505:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2667, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2649, + "src": "8514:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2665, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8488:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8488:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2669, + "nodeType": "EmitStatement", + "src": "8483:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2671, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2644, + "src": "8541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + }, + { + "id": 2672, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2647, + "src": "8544:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + }, + { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[] memory" + } + ], + "id": 2670, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2557, + "src": "8532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (uint256[] memory,uint256[] memory)" + } + }, + "id": 2673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8532:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2674, + "nodeType": "ExpressionStatement", + "src": "8532:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8324:8:2", + "parameters": { + "id": 2650, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2644, + "mutability": "mutable", + "name": "a", + "nameLocation": "8350:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8333:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2642, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8333:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2643, + "nodeType": "ArrayTypeName", + "src": "8333:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2647, + "mutability": "mutable", + "name": "b", + "nameLocation": "8370:1:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8353:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", + "typeString": "uint256[]" + }, + "typeName": { + "baseType": { + "id": 2645, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8353:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2646, + "nodeType": "ArrayTypeName", + "src": "8353:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", + "typeString": "uint256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2649, + "mutability": "mutable", + "name": "err", + "nameLocation": "8387:3:2", + "nodeType": "VariableDeclaration", + "scope": 2678, + "src": "8373:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2648, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8373:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8332:59:2" + }, + "returnParameters": { + "id": 2651, + "nodeType": "ParameterList", + "parameters": [], + "src": "8401:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2715, + "nodeType": "FunctionDefinition", + "src": "8569:246:2", + "body": { + "id": 2714, + "nodeType": "Block", + "src": "8653:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2701, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2692, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8688:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2690, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8677:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2691, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8677:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2693, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8677:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2689, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8667:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8667:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2698, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8716:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "expression": { + "id": 2696, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8705:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2697, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8705:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8705:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2695, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8695:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8695:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8667:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2713, + "nodeType": "IfStatement", + "src": "8663:146:2", + "trueBody": { + "id": 2712, + "nodeType": "Block", + "src": "8721:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8757:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2704, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2686, + "src": "8766:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2702, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8740:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2705, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8740:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2706, + "nodeType": "EmitStatement", + "src": "8735:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2708, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2681, + "src": "8793:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + }, + { + "id": 2709, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2684, + "src": "8796:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + }, + { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[] memory" + } + ], + "id": 2707, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2599, + "src": "8784:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_int256_$dyn_memory_ptr_$_t_array$_t_int256_$dyn_memory_ptr_$returns$__$", + "typeString": "function (int256[] memory,int256[] memory)" + } + }, + "id": 2710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8784:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2711, + "nodeType": "ExpressionStatement", + "src": "8784:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8578:8:2", + "parameters": { + "id": 2687, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2681, + "mutability": "mutable", + "name": "a", + "nameLocation": "8603:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8587:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2679, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8587:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2680, + "nodeType": "ArrayTypeName", + "src": "8587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2684, + "mutability": "mutable", + "name": "b", + "nameLocation": "8622:1:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8606:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_memory_ptr", + "typeString": "int256[]" + }, + "typeName": { + "baseType": { + "id": 2682, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "8606:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 2683, + "nodeType": "ArrayTypeName", + "src": "8606:8:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_int256_$dyn_storage_ptr", + "typeString": "int256[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2686, + "mutability": "mutable", + "name": "err", + "nameLocation": "8639:3:2", + "nodeType": "VariableDeclaration", + "scope": 2715, + "src": "8625:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2685, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8625:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8586:57:2" + }, + "returnParameters": { + "id": 2688, + "nodeType": "ParameterList", + "parameters": [], + "src": "8653:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2752, + "nodeType": "FunctionDefinition", + "src": "8822:248:2", + "body": { + "id": 2751, + "nodeType": "Block", + "src": "8908:162:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 2738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2729, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "8943:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2727, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8932:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2728, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8932:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2730, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8932:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2726, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8922:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2731, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8922:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 2735, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "8971:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "expression": { + "id": 2733, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "8960:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2734, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "8960:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8960:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 2732, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "8950:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 2737, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8950:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "8922:52:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2750, + "nodeType": "IfStatement", + "src": "8918:146:2", + "trueBody": { + "id": 2749, + "nodeType": "Block", + "src": "8976:88:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2740, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9012:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2741, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2723, + "src": "9021:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2739, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "8995:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8995:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2743, + "nodeType": "EmitStatement", + "src": "8990:35:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2745, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2718, + "src": "9048:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + }, + { + "id": 2746, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2721, + "src": "9051:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + }, + { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[] memory" + } + ], + "id": 2744, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 2641, + "src": "9039:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$", + "typeString": "function (address[] memory,address[] memory)" + } + }, + "id": 2747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9039:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2748, + "nodeType": "ExpressionStatement", + "src": "9039:14:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertEq", + "nameLocation": "8831:8:2", + "parameters": { + "id": 2724, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2718, + "mutability": "mutable", + "name": "a", + "nameLocation": "8857:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8840:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2716, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8840:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2717, + "nodeType": "ArrayTypeName", + "src": "8840:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2721, + "mutability": "mutable", + "name": "b", + "nameLocation": "8877:1:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8860:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 2719, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8860:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 2720, + "nodeType": "ArrayTypeName", + "src": "8860:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2723, + "mutability": "mutable", + "name": "err", + "nameLocation": "8894:3:2", + "nodeType": "VariableDeclaration", + "scope": 2752, + "src": "8880:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2722, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "8880:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "8839:59:2" + }, + "returnParameters": { + "id": 2725, + "nodeType": "ParameterList", + "parameters": [], + "src": "8908:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 2802, + "nodeType": "FunctionDefinition", + "src": "9076:516:2", + "body": { + "id": 2801, + "nodeType": "Block", + "src": "9190:402:2", + "statements": [ + { + "assignments": [ + 2762 + ], + "declarations": [ + { + "constant": false, + "id": 2762, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9208:5:2", + "nodeType": "VariableDeclaration", + "scope": 2801, + "src": "9200:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2761, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2768, + "initialValue": { + "arguments": [ + { + "id": 2765, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9230:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2766, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9233:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2763, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9216:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2764, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9216:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2767, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9216:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9200:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2771, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2769, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9250:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2770, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9258:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9250:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2800, + "nodeType": "IfStatement", + "src": "9246:340:2", + "trueBody": { + "id": 2799, + "nodeType": "Block", + "src": "9268:318:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2773, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9303:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2772, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "9287:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2774, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9287:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2775, + "nodeType": "EmitStatement", + "src": "9282:58:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2777, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9375:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2778, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2756, + "src": "9389:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2776, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9359:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9359:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2780, + "nodeType": "EmitStatement", + "src": "9354:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2782, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9426:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2783, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2754, + "src": "9440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2781, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9410:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2784, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9410:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2785, + "nodeType": "EmitStatement", + "src": "9405:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2787, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9477:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2788, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2758, + "src": "9491:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2786, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9461:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2789, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9461:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2790, + "nodeType": "EmitStatement", + "src": "9456:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2792, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9535:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2793, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2762, + "src": "9549:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2791, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "9519:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9519:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2795, + "nodeType": "EmitStatement", + "src": "9514:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2796, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "9569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2797, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9569:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2798, + "nodeType": "ExpressionStatement", + "src": "9569:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9085:17:2", + "parameters": { + "id": 2759, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2754, + "mutability": "mutable", + "name": "a", + "nameLocation": "9120:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9112:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2753, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9112:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2756, + "mutability": "mutable", + "name": "b", + "nameLocation": "9139:1:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9131:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2755, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9131:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2758, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9158:8:2", + "nodeType": "VariableDeclaration", + "scope": 2802, + "src": "9150:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2757, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9150:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9102:70:2" + }, + "returnParameters": { + "id": 2760, + "nodeType": "ParameterList", + "parameters": [], + "src": "9190:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2838, + "nodeType": "FunctionDefinition", + "src": "9598:335:2", + "body": { + "id": 2837, + "nodeType": "Block", + "src": "9739:194:2", + "statements": [ + { + "assignments": [ + 2814 + ], + "declarations": [ + { + "constant": false, + "id": 2814, + "mutability": "mutable", + "name": "delta", + "nameLocation": "9757:5:2", + "nodeType": "VariableDeclaration", + "scope": 2837, + "src": "9749:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2813, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9749:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2820, + "initialValue": { + "arguments": [ + { + "id": 2817, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9779:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2818, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9782:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2815, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "9765:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2816, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4387, + "src": "9765:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2819, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9765:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "9749:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2821, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2814, + "src": "9799:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2822, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9807:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9799:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2836, + "nodeType": "IfStatement", + "src": "9795:132:2", + "trueBody": { + "id": 2835, + "nodeType": "Block", + "src": "9817:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2825, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9856:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2826, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2810, + "src": "9865:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2824, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "9836:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2827, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9836:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2828, + "nodeType": "EmitStatement", + "src": "9831:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2830, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2804, + "src": "9901:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2831, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2806, + "src": "9904:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2832, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2808, + "src": "9907:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2829, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2802, + "src": "9883:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 2833, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "9883:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2834, + "nodeType": "ExpressionStatement", + "src": "9883:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9607:17:2", + "parameters": { + "id": 2811, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2804, + "mutability": "mutable", + "name": "a", + "nameLocation": "9642:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9634:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2803, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9634:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2806, + "mutability": "mutable", + "name": "b", + "nameLocation": "9661:1:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9653:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9653:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2808, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "9680:8:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9672:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9672:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2810, + "mutability": "mutable", + "name": "err", + "nameLocation": "9712:3:2", + "nodeType": "VariableDeclaration", + "scope": 2838, + "src": "9698:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2809, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "9698:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "9624:97:2" + }, + "returnParameters": { + "id": 2812, + "nodeType": "ParameterList", + "parameters": [], + "src": "9739:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2888, + "nodeType": "FunctionDefinition", + "src": "9939:513:2", + "body": { + "id": 2887, + "nodeType": "Block", + "src": "10051:401:2", + "statements": [ + { + "assignments": [ + 2848 + ], + "declarations": [ + { + "constant": false, + "id": 2848, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10069:5:2", + "nodeType": "VariableDeclaration", + "scope": 2887, + "src": "10061:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2847, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10061:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2854, + "initialValue": { + "arguments": [ + { + "id": 2851, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10091:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2852, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10094:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2849, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10077:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10077:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10061:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2855, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10111:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2856, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10119:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10111:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2886, + "nodeType": "IfStatement", + "src": "10107:339:2", + "trueBody": { + "id": 2885, + "nodeType": "Block", + "src": "10129:317:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 2859, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10164:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 2858, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "10148:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10148:52:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2861, + "nodeType": "EmitStatement", + "src": "10143:57:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20204578706563746564", + "id": 2863, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10235:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2864, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2842, + "src": "10249:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_42fa07d7c51ce5de92a0fc65dbf7e7800814fd01c258dc50e84d5be59184bf0b", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2862, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10219:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2865, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10219:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2866, + "nodeType": "EmitStatement", + "src": "10214:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202041637475616c", + "id": 2868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10286:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2869, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2840, + "src": "10300:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_d7896f3f645b3ba89da46bf231a5df16e525e587a84bc9b284dfb39958fb219b", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 2867, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "10270:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 2870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10270:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2871, + "nodeType": "EmitStatement", + "src": "10265:37:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d61782044656c7461", + "id": 2873, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10337:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + "value": " Max Delta" + }, + { + "id": 2874, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2844, + "src": "10351:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_cd2884c74a25327f5cafe8471ed73da28ba1991b65dde72feb1cd4f78f5dc2a5", + "typeString": "literal_string \" Max Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2872, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10321:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10321:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2876, + "nodeType": "EmitStatement", + "src": "10316:44:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020202044656c7461", + "id": 2878, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10395:12:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + "value": " Delta" + }, + { + "id": 2879, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2848, + "src": "10409:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_39d8d5e74991bbc141eb1ca770e60e69523d5c43706b72685708d217b293c55f", + "typeString": "literal_string \" Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2877, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "10379:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2880, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10379:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2881, + "nodeType": "EmitStatement", + "src": "10374:41:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2882, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "10429:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2883, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10429:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2884, + "nodeType": "ExpressionStatement", + "src": "10429:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "9948:17:2", + "parameters": { + "id": 2845, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2840, + "mutability": "mutable", + "name": "a", + "nameLocation": "9982:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9975:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2839, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9975:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2842, + "mutability": "mutable", + "name": "b", + "nameLocation": "10000:1:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "9993:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2841, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "9993:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2844, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10019:8:2", + "nodeType": "VariableDeclaration", + "scope": 2888, + "src": "10011:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2843, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9965:68:2" + }, + "returnParameters": { + "id": 2846, + "nodeType": "ParameterList", + "parameters": [], + "src": "10051:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2924, + "nodeType": "FunctionDefinition", + "src": "10458:333:2", + "body": { + "id": 2923, + "nodeType": "Block", + "src": "10597:194:2", + "statements": [ + { + "assignments": [ + 2900 + ], + "declarations": [ + { + "constant": false, + "id": 2900, + "mutability": "mutable", + "name": "delta", + "nameLocation": "10615:5:2", + "nodeType": "VariableDeclaration", + "scope": 2923, + "src": "10607:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2899, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10607:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2906, + "initialValue": { + "arguments": [ + { + "id": 2903, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10637:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2904, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10640:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 2901, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "10623:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "delta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4431, + "src": "10623:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 2905, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10623:19:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10607:35:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2909, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2907, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2900, + "src": "10657:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2908, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10665:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2922, + "nodeType": "IfStatement", + "src": "10653:132:2", + "trueBody": { + "id": 2921, + "nodeType": "Block", + "src": "10675:110:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 2911, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10714:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 2912, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2896, + "src": "10723:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 2910, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "10694:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 2913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10694:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2914, + "nodeType": "EmitStatement", + "src": "10689:38:2" + }, + { + "expression": { + "arguments": [ + { + "id": 2916, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2890, + "src": "10759:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2917, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2892, + "src": "10762:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 2918, + "name": "maxDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2894, + "src": "10765:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2915, + "name": "assertApproxEqAbs", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2802, + 2838, + 2888, + 2924 + ], + "referencedDeclaration": 2888, + "src": "10741:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 2919, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "10741:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2920, + "nodeType": "ExpressionStatement", + "src": "10741:33:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqAbs", + "nameLocation": "10467:17:2", + "parameters": { + "id": 2897, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2890, + "mutability": "mutable", + "name": "a", + "nameLocation": "10501:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10494:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2889, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10494:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2892, + "mutability": "mutable", + "name": "b", + "nameLocation": "10519:1:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10512:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 2891, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "10512:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2894, + "mutability": "mutable", + "name": "maxDelta", + "nameLocation": "10538:8:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10530:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2893, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10530:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2896, + "mutability": "mutable", + "name": "err", + "nameLocation": "10570:3:2", + "nodeType": "VariableDeclaration", + "scope": 2924, + "src": "10556:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2895, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10556:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "10484:95:2" + }, + "returnParameters": { + "id": 2898, + "nodeType": "ParameterList", + "parameters": [], + "src": "10597:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 2985, + "nodeType": "FunctionDefinition", + "src": "10797:766:2", + "body": { + "id": 2984, + "nodeType": "Block", + "src": "10974:589:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2935, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2933, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "10988:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2934, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "10988:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2941, + "nodeType": "IfStatement", + "src": "10984:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 2937, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11012:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2938, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11015:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2936, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11003:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 2939, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11003:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2932, + "id": 2940, + "nodeType": "Return", + "src": "10996:21:2" + } + }, + { + "assignments": [ + 2943 + ], + "declarations": [ + { + "constant": false, + "id": 2943, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11081:12:2", + "nodeType": "VariableDeclaration", + "scope": 2984, + "src": "11073:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2942, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11073:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2949, + "initialValue": { + "arguments": [ + { + "id": 2946, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11117:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 2947, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11120:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 2944, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11096:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 2945, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11096:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 2948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11096:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11073:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2950, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11137:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 2951, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11152:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11137:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2983, + "nodeType": "IfStatement", + "src": "11133:424:2", + "trueBody": { + "id": 2982, + "nodeType": "Block", + "src": "11169:388:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b75696e745d", + "id": 2954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11212:36:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + }, + "value": "Error: a ~= b not satisfied [uint]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_b3cfa1421f120a399b6064fcc8d5188a4e28bcc717972b37d8e8a5e5cc07c7fe", + "typeString": "literal_string \"Error: a ~= b not satisfied [uint]\"" + } + ], + "id": 2953, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "11188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 2955, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11188:61:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2956, + "nodeType": "EmitStatement", + "src": "11183:66:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 2958, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11292:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 2959, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2928, + "src": "11308:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2957, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11268:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11268:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2961, + "nodeType": "EmitStatement", + "src": "11263:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 2963, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11353:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 2964, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2926, + "src": "11369:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2962, + "name": "log_named_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "11329:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256)" + } + }, + "id": 2965, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11329:42:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2966, + "nodeType": "EmitStatement", + "src": "11324:47:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 2968, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11414:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 2969, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2930, + "src": "11430:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2970, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11447:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2967, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11390:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11390:60:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2972, + "nodeType": "EmitStatement", + "src": "11385:65:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 2974, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11493:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 2975, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2943, + "src": "11509:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 2976, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11523:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 2973, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "11469:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 2977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11469:57:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2978, + "nodeType": "EmitStatement", + "src": "11464:62:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 2979, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "11540:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 2980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11540:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2981, + "nodeType": "ExpressionStatement", + "src": "11540:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "10806:17:2", + "parameters": { + "id": 2931, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2926, + "mutability": "mutable", + "name": "a", + "nameLocation": "10841:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10833:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2925, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10833:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2928, + "mutability": "mutable", + "name": "b", + "nameLocation": "10860:1:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10852:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2927, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10852:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2930, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "10879:15:2", + "nodeType": "VariableDeclaration", + "scope": 2985, + "src": "10871:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2929, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10871:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10823:133:2" + }, + "returnParameters": { + "id": 2932, + "nodeType": "ParameterList", + "parameters": [], + "src": "10974:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3030, + "nodeType": "FunctionDefinition", + "src": "11569:526:2", + "body": { + "id": 3029, + "nodeType": "Block", + "src": "11773:322:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2996, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 2997, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11792:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "11787:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3004, + "nodeType": "IfStatement", + "src": "11783:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3000, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11811:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3001, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11814:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 2999, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 514, + "src": "11802:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256)" + } + }, + "id": 3002, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11802:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 2995, + "id": 3003, + "nodeType": "Return", + "src": "11795:21:2" + } + }, + { + "assignments": [ + 3006 + ], + "declarations": [ + { + "constant": false, + "id": 3006, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "11880:12:2", + "nodeType": "VariableDeclaration", + "scope": 3029, + "src": "11872:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3005, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11872:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3012, + "initialValue": { + "arguments": [ + { + "id": 3009, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "11916:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3010, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "11919:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3007, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "11895:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4454, + "src": "11895:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3011, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11895:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11872:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3013, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3006, + "src": "11936:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3014, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "11951:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11936:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3028, + "nodeType": "IfStatement", + "src": "11932:157:2", + "trueBody": { + "id": 3027, + "nodeType": "Block", + "src": "11968:121:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3017, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12011:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3018, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2993, + "src": "12020:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3016, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "11987:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3019, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "11987:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3020, + "nodeType": "EmitStatement", + "src": "11982:42:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3022, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2987, + "src": "12056:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3023, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2989, + "src": "12059:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 3024, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2991, + "src": "12062:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3021, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 2985, + "src": "12038:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (uint256,uint256,uint256)" + } + }, + "id": 3025, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12038:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3026, + "nodeType": "ExpressionStatement", + "src": "12038:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "11578:17:2", + "parameters": { + "id": 2994, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 2987, + "mutability": "mutable", + "name": "a", + "nameLocation": "11613:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11605:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2986, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11605:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2989, + "mutability": "mutable", + "name": "b", + "nameLocation": "11632:1:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11624:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2988, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11624:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2991, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "11651:15:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11643:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2990, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11643:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 2993, + "mutability": "mutable", + "name": "err", + "nameLocation": "11746:3:2", + "nodeType": "VariableDeclaration", + "scope": 3030, + "src": "11732:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 2992, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "11732:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "11595:160:2" + }, + "returnParameters": { + "id": 2995, + "nodeType": "ParameterList", + "parameters": [], + "src": "11773:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3091, + "nodeType": "FunctionDefinition", + "src": "12101:702:2", + "body": { + "id": 3090, + "nodeType": "Block", + "src": "12220:583:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3041, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3039, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12234:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3040, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12234:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3047, + "nodeType": "IfStatement", + "src": "12230:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3043, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12258:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3044, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12261:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3042, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12249:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12249:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3038, + "id": 3046, + "nodeType": "Return", + "src": "12242:21:2" + } + }, + { + "assignments": [ + 3049 + ], + "declarations": [ + { + "constant": false, + "id": 3049, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "12327:12:2", + "nodeType": "VariableDeclaration", + "scope": 3090, + "src": "12319:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3048, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12319:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3055, + "initialValue": { + "arguments": [ + { + "id": 3052, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12363:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3053, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12366:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3050, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "12342:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3051, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "12342:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12342:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "12319:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3058, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3056, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12383:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3057, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12398:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12383:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3089, + "nodeType": "IfStatement", + "src": "12379:418:2", + "trueBody": { + "id": 3088, + "nodeType": "Block", + "src": "12415:382:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f723a2061207e3d2062206e6f7420736174697366696564205b696e745d", + "id": 3060, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12457:35:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + }, + "value": "Error: a ~= b not satisfied [int]" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_11d61c8cdd58caffa5994831eb66eb6db7a7b4d13b2c9d187ffbe992d75f810d", + "typeString": "literal_string \"Error: a ~= b not satisfied [int]\"" + } + ], + "id": 3059, + "name": "log", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 5, + "src": "12434:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory)" + } + }, + "id": 3061, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12434:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3062, + "nodeType": "EmitStatement", + "src": "12429:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "202020204578706563746564", + "id": 3064, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12535:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + "value": " Expected" + }, + { + "id": 3065, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3034, + "src": "12551:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0e33bb6058f2c6cccd03674115e231a9d0cfe482a7efa638b81035808613e7d3", + "typeString": "literal_string \" Expected\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3063, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12512:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3066, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12512:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3067, + "nodeType": "EmitStatement", + "src": "12507:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "20202020202041637475616c", + "id": 3069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12595:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + "value": " Actual" + }, + { + "id": 3070, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3032, + "src": "12611:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_0c86931dadd9b7dcb5fe0132c9f180edb774e714bd6d32d0fc56d5f9258e30e9", + "typeString": "literal_string \" Actual\"" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3068, + "name": "log_named_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 67, + "src": "12572:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_int256_$returns$__$", + "typeString": "function (string memory,int256)" + } + }, + "id": 3071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12572:41:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3072, + "nodeType": "EmitStatement", + "src": "12567:46:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "204d617820252044656c7461", + "id": 3074, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12655:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + "value": " Max % Delta" + }, + { + "id": 3075, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3036, + "src": "12671:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3076, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12688:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_476fe8c6eb42275e4a879ea3f97d4c8aa2f38a65ce8511d323ad7a22579f732d", + "typeString": "literal_string \" Max % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3073, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12632:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12632:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3078, + "nodeType": "EmitStatement", + "src": "12627:64:2" + }, + { + "eventCall": { + "arguments": [ + { + "hexValue": "2020202020252044656c7461", + "id": 3080, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12733:14:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + "value": " % Delta" + }, + { + "id": 3081, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3049, + "src": "12749:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "hexValue": "3138", + "id": 3082, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12763:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "18" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_3a4ade1e1607945ca481fbcd7c0ca5baa7e21e413316ae3997404f04177b03d7", + "typeString": "literal_string \" % Delta\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "id": 3079, + "name": "log_named_decimal_uint", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 61, + "src": "12710:22:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$returns$__$", + "typeString": "function (string memory,uint256,uint256)" + } + }, + "id": 3083, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12710:56:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3084, + "nodeType": "EmitStatement", + "src": "12705:61:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "id": 3085, + "name": "fail", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2400, + 216 + ], + "referencedDeclaration": 216, + "src": "12780:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$__$returns$__$", + "typeString": "function ()" + } + }, + "id": 3086, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12780:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3087, + "nodeType": "ExpressionStatement", + "src": "12780:6:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12110:17:2", + "parameters": { + "id": 3037, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3032, + "mutability": "mutable", + "name": "a", + "nameLocation": "12144:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12137:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3031, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12137:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3034, + "mutability": "mutable", + "name": "b", + "nameLocation": "12162:1:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12155:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3033, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12155:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3036, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12181:15:2", + "nodeType": "VariableDeclaration", + "scope": 3091, + "src": "12173:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3035, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12173:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "12127:75:2" + }, + "returnParameters": { + "id": 3038, + "nodeType": "ParameterList", + "parameters": [], + "src": "12220:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + }, + { + "id": 3136, + "nodeType": "FunctionDefinition", + "src": "12809:467:2", + "body": { + "id": 3135, + "nodeType": "Block", + "src": "12955:321:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 3104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3102, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12969:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 3103, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12974:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "12969:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3110, + "nodeType": "IfStatement", + "src": "12965:33:2", + "trueBody": { + "expression": { + "arguments": [ + { + "id": 3106, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "12993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3107, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "12996:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 3105, + "name": "assertEq", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2461, + 2486, + 2499, + 2515, + 2557, + 2599, + 2641, + 2678, + 2715, + 2752, + 320, + 345, + 375, + 400, + 459, + 484, + 514, + 539, + 1639, + 1674 + ], + "referencedDeclaration": 459, + "src": "12984:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$returns$__$", + "typeString": "function (int256,int256)" + } + }, + "id": 3108, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12984:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "functionReturnParameters": 3101, + "id": 3109, + "nodeType": "Return", + "src": "12977:21:2" + } + }, + { + "assignments": [ + 3112 + ], + "declarations": [ + { + "constant": false, + "id": 3112, + "mutability": "mutable", + "name": "percentDelta", + "nameLocation": "13062:12:2", + "nodeType": "VariableDeclaration", + "scope": 3135, + "src": "13054:20:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3111, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13054:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3118, + "initialValue": { + "arguments": [ + { + "id": 3115, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13098:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3116, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13101:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "expression": { + "id": 3113, + "name": "stdMath", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4484, + "src": "13077:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_stdMath_$4484_$", + "typeString": "type(library stdMath)" + } + }, + "id": 3114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "percentDelta", + "nodeType": "MemberAccess", + "referencedDeclaration": 4483, + "src": "13077:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 3117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13077:26:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "13054:49:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3121, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3119, + "name": "percentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3112, + "src": "13118:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 3120, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13133:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13118:30:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3134, + "nodeType": "IfStatement", + "src": "13114:156:2", + "trueBody": { + "id": 3133, + "nodeType": "Block", + "src": "13150:120:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "hexValue": "4572726f72", + "id": 3123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13192:7:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + "value": "Error" + }, + { + "id": 3124, + "name": "err", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3099, + "src": "13201:3:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_e342daa49723ff3485f4ff5f755a17b8bc9c3c33bbd312ceee37c94eebfe45c1", + "typeString": "literal_string \"Error\"" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3122, + "name": "log_named_string", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "13169:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory,string memory)" + } + }, + "id": 3125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13169:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3126, + "nodeType": "EmitStatement", + "src": "13164:41:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3128, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3093, + "src": "13237:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3129, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3095, + "src": "13240:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 3130, + "name": "maxPercentDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3097, + "src": "13243:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3127, + "name": "assertApproxEqRel", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 2985, + 3030, + 3091, + 3136 + ], + "referencedDeclaration": 3091, + "src": "13219:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_int256_$_t_int256_$_t_uint256_$returns$__$", + "typeString": "function (int256,int256,uint256)" + } + }, + "id": 3131, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13219:40:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3132, + "nodeType": "ExpressionStatement", + "src": "13219:40:2" + } + ] + } + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "assertApproxEqRel", + "nameLocation": "12818:17:2", + "parameters": { + "id": 3100, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3093, + "mutability": "mutable", + "name": "a", + "nameLocation": "12852:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12845:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3092, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12845:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3095, + "mutability": "mutable", + "name": "b", + "nameLocation": "12870:1:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12863:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3094, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "12863:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3097, + "mutability": "mutable", + "name": "maxPercentDelta", + "nameLocation": "12889:15:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12881:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3096, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12881:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3099, + "mutability": "mutable", + "name": "err", + "nameLocation": "12928:3:2", + "nodeType": "VariableDeclaration", + "scope": 3136, + "src": "12914:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3098, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "12914:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "12835:102:2" + }, + "returnParameters": { + "id": 3101, + "nodeType": "ParameterList", + "parameters": [], + "src": "12955:0:2" + }, + "scope": 3137, + "stateMutability": "nonpayable", + "virtual": true, + "visibility": "internal" + } + ], + "abstract": true, + "baseContracts": [ + { + "baseName": { + "id": 1823, + "name": "DSTest", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1786, + "src": "196:6:2" + }, + "id": 1824, + "nodeType": "InheritanceSpecifier", + "src": "196:6:2" + }, + { + "baseName": { + "id": 1825, + "name": "Script", + "nodeType": "IdentifierPath", + "referencedDeclaration": 1818, + "src": "204:6:2" + }, + "id": 1826, + "nodeType": "InheritanceSpecifier", + "src": "204:6:2" + } + ], + "canonicalName": "Test", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3137, + 1818, + 1786 + ], + "name": "Test", + "nameLocation": "188:4:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3207, + "nodeType": "ContractDefinition", + "src": "13478:984:2", + "nodes": [ + { + "id": 3144, + "nodeType": "VariableDeclaration", + "src": "13501:86:2", + "constant": true, + "functionSelector": "10332977", + "mutability": "constant", + "name": "assertionError", + "nameLocation": "13523:14:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3138, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13501:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13564:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783031", + "id": 3142, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13582:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "0x01" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + } + ], + "expression": { + "id": 3139, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3140, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13540:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3143, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13540:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3151, + "nodeType": "VariableDeclaration", + "src": "13593:87:2", + "constant": true, + "functionSelector": "8995290f", + "mutability": "constant", + "name": "arithmeticError", + "nameLocation": "13615:15:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3145, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13593:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3148, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13657:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783131", + "id": 3149, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13675:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "0x11" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + } + ], + "expression": { + "id": 3146, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13633:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3147, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13633:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3150, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13633:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3158, + "nodeType": "VariableDeclaration", + "src": "13686:85:2", + "constant": true, + "functionSelector": "fa784a44", + "mutability": "constant", + "name": "divisionError", + "nameLocation": "13708:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3152, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13686:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3155, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13748:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783132", + "id": 3156, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13766:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + }, + "value": "0x12" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_18_by_1", + "typeString": "int_const 18" + } + ], + "expression": { + "id": 3153, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13724:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3154, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13724:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3157, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13724:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3165, + "nodeType": "VariableDeclaration", + "src": "13777:91:2", + "constant": true, + "functionSelector": "1de45560", + "mutability": "constant", + "name": "enumConversionError", + "nameLocation": "13799:19:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3159, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3162, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13845:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783231", + "id": 3163, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13863:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + }, + "value": "0x21" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_33_by_1", + "typeString": "int_const 33" + } + ], + "expression": { + "id": 3160, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13821:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3161, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13821:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3164, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13821:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3172, + "nodeType": "VariableDeclaration", + "src": "13874:90:2", + "constant": true, + "functionSelector": "d160e4de", + "mutability": "constant", + "name": "encodeStorageError", + "nameLocation": "13896:18:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3166, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13874:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13941:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783232", + "id": 3170, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + }, + "value": "0x22" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_34_by_1", + "typeString": "int_const 34" + } + ], + "expression": { + "id": 3167, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "13917:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "13917:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3171, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "13917:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3179, + "nodeType": "VariableDeclaration", + "src": "13970:80:2", + "constant": true, + "functionSelector": "b22dc54d", + "mutability": "constant", + "name": "popError", + "nameLocation": "13992:8:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3173, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "13970:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3176, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14027:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783331", + "id": 3177, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14045:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + }, + "value": "0x31" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_49_by_1", + "typeString": "int_const 49" + } + ], + "expression": { + "id": 3174, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14003:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3175, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14003:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14003:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3186, + "nodeType": "VariableDeclaration", + "src": "14056:85:2", + "constant": true, + "functionSelector": "05ee8612", + "mutability": "constant", + "name": "indexOOBError", + "nameLocation": "14078:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3180, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14056:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3183, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14118:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783332", + "id": 3184, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14136:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + }, + "value": "0x32" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_50_by_1", + "typeString": "int_const 50" + } + ], + "expression": { + "id": 3181, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14094:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3182, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14094:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3185, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14094:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3193, + "nodeType": "VariableDeclaration", + "src": "14147:88:2", + "constant": true, + "functionSelector": "986c5f68", + "mutability": "constant", + "name": "memOverflowError", + "nameLocation": "14169:16:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3187, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14147:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3190, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14212:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783431", + "id": 3191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14230:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + }, + "value": "0x41" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_65_by_1", + "typeString": "int_const 65" + } + ], + "expression": { + "id": 3188, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14188:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3189, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14188:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3192, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14188:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3200, + "nodeType": "VariableDeclaration", + "src": "14241:84:2", + "constant": true, + "functionSelector": "b67689da", + "mutability": "constant", + "name": "zeroVarError", + "nameLocation": "14263:12:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3194, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14241:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "50616e69632875696e7432353629", + "id": 3197, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14302:16:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + "value": "Panic(uint256)" + }, + { + "hexValue": "30783531", + "id": 3198, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14320:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + }, + "value": "0x51" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4e487b71539e0164c9d29506cc725e49342bcac15e0927282bf30fedfe1c7268", + "typeString": "literal_string \"Panic(uint256)\"" + }, + { + "typeIdentifier": "t_rational_81_by_1", + "typeString": "int_const 81" + } + ], + "expression": { + "id": 3195, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "14278:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodeWithSignature", + "nodeType": "MemberAccess", + "src": "14278:23:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (string memory) pure returns (bytes memory)" + } + }, + "id": 3199, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14278:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + }, + { + "id": 3206, + "nodeType": "VariableDeclaration", + "src": "14404:47:2", + "constant": true, + "functionSelector": "ac3d92c6", + "mutability": "constant", + "name": "lowLevelError", + "nameLocation": "14426:13:2", + "scope": 3207, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3201, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14404:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "value": { + "arguments": [ + { + "hexValue": "", + "id": 3204, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14448:2:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + }, + "value": "" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "typeString": "literal_string \"\"" + } + ], + "id": 3203, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "14442:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3202, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "14442:5:2", + "typeDescriptions": {} + } + }, + "id": 3205, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14442:9:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "visibility": "public" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdError", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 3207 + ], + "name": "stdError", + "nameLocation": "13486:8:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 3235, + "nodeType": "StructDefinition", + "src": "14663:275:2", + "canonicalName": "StdStorage", + "members": [ + { + "constant": false, + "id": 3215, + "mutability": "mutable", + "name": "slots", + "nameLocation": "14755:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14687:73:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "typeName": { + "id": 3214, + "keyType": { + "id": 3208, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14696:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14687:67:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + }, + "valueType": { + "id": 3213, + "keyType": { + "id": 3209, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14715:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14707:46:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + }, + "valueType": { + "id": 3212, + "keyType": { + "id": 3210, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14733:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14725:27:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + }, + "valueType": { + "id": 3211, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14744:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3223, + "mutability": "mutable", + "name": "finds", + "nameLocation": "14832:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14766:71:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "typeName": { + "id": 3222, + "keyType": { + "id": 3216, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14775:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "14766:65:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + }, + "valueType": { + "id": 3221, + "keyType": { + "id": 3217, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14794:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Mapping", + "src": "14786:44:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + }, + "valueType": { + "id": 3220, + "keyType": { + "id": 3218, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14813:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Mapping", + "src": "14805:24:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + }, + "valueType": { + "id": 3219, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "14824:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3226, + "mutability": "mutable", + "name": "_keys", + "nameLocation": "14854:5:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14844:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3224, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14844:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3225, + "nodeType": "ArrayTypeName", + "src": "14844:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3228, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "14872:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14865:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3227, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14865:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3230, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "14890:6:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14882:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3229, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14882:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3232, + "mutability": "mutable", + "name": "_target", + "nameLocation": "14910:7:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14902:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3231, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14902:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3234, + "mutability": "mutable", + "name": "_set", + "nameLocation": "14931:4:2", + "nodeType": "VariableDeclaration", + "scope": 3235, + "src": "14923:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3233, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "14923:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "name": "StdStorage", + "nameLocation": "14670:10:2", + "scope": 4485, + "visibility": "public" + }, + { + "id": 4337, + "nodeType": "ContractDefinition", + "src": "14940:8872:2", + "nodes": [ + { + "id": 3245, + "nodeType": "EventDefinition", + "src": "14965:71:2", + "anonymous": false, + "eventSelector": "9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed", + "name": "SlotFound", + "nameLocation": "14971:9:2", + "parameters": { + "id": 3244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3237, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "14989:3:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14981:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3236, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "14981:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3239, + "indexed": false, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "15001:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "14994:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3238, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "14994:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3241, + "indexed": false, + "mutability": "mutable", + "name": "keysHash", + "nameLocation": "15015:8:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15007:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3240, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "15007:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3243, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15030:4:2", + "nodeType": "VariableDeclaration", + "scope": 3245, + "src": "15025:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15025:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "14980:55:2" + } + }, + { + "id": 3251, + "nodeType": "EventDefinition", + "src": "15041:51:2", + "anonymous": false, + "eventSelector": "080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a5", + "name": "WARNING_UninitedSlot", + "nameLocation": "15047:20:2", + "parameters": { + "id": 3250, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3247, + "indexed": false, + "mutability": "mutable", + "name": "who", + "nameLocation": "15076:3:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15068:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15068:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3249, + "indexed": false, + "mutability": "mutable", + "name": "slot", + "nameLocation": "15086:4:2", + "nodeType": "VariableDeclaration", + "scope": 3251, + "src": "15081:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3248, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "15081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "15067:24:2" + } + }, + { + "id": 3254, + "nodeType": "VariableDeclaration", + "src": "15098:117:2", + "constant": true, + "mutability": "constant", + "name": "UINT256_MAX", + "nameLocation": "15123:11:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3252, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15098:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335", + "id": 3253, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15137:78:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", + "typeString": "int_const 1157...(70 digits omitted)...9935" + }, + "value": "115792089237316195423570985008687907853269984665640564039457584007913129639935" + }, + "visibility": "private" + }, + { + "id": 3257, + "nodeType": "VariableDeclaration", + "src": "15221:114:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MAX", + "nameLocation": "15245:10:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 3255, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "15221:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393637", + "id": 3256, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15258:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819967_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9967" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819967" + }, + "visibility": "private" + }, + { + "id": 3274, + "nodeType": "VariableDeclaration", + "src": "15342:94:2", + "constant": true, + "mutability": "constant", + "name": "vm_std_store", + "nameLocation": "15362:12:2", + "scope": 4337, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + }, + "typeName": { + "id": 3259, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3258, + "name": "Vm", + "nodeType": "IdentifierPath", + "referencedDeclaration": 4964, + "src": "15342:2:2" + }, + "referencedDeclaration": 4964, + "src": "15342:2:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "value": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "hexValue": "6865766d20636865617420636f6465", + "id": 3268, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "15414:17:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + }, + "value": "hevm cheat code" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d", + "typeString": "literal_string \"hevm cheat code\"" + } + ], + "id": 3267, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15404:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3269, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15404:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3266, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15396:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3265, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "15396:7:2", + "typeDescriptions": {} + } + }, + "id": 3270, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15396:37:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15388:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3263, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "15388:7:2", + "typeDescriptions": {} + } + }, + "id": 3271, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15388:46:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15380:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3261, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "15380:7:2", + "typeDescriptions": {} + } + }, + "id": 3272, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15380:55:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3260, + "name": "Vm", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4964, + "src": "15377:2:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_Vm_$4964_$", + "typeString": "type(contract Vm)" + } + }, + "id": 3273, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15377:59:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "visibility": "private" + }, + { + "id": 3292, + "nodeType": "FunctionDefinition", + "src": "15443:165:2", + "body": { + "id": 3291, + "nodeType": "Block", + "src": "15552:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3286, + "name": "sigStr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3276, + "src": "15592:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3285, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15586:5:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": { + "id": 3284, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "15586:5:2", + "typeDescriptions": {} + } + }, + "id": 3287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15586:13:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3283, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "15576:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15576:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3282, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "15569:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes4_$", + "typeString": "type(bytes4)" + }, + "typeName": { + "id": 3281, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15569:6:2", + "typeDescriptions": {} + } + }, + "id": 3289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "15569:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "functionReturnParameters": 3280, + "id": 3290, + "nodeType": "Return", + "src": "15562:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sigs", + "nameLocation": "15452:4:2", + "parameters": { + "id": 3277, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3276, + "mutability": "mutable", + "name": "sigStr", + "nameLocation": "15480:6:2", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15466:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3275, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "15466:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "15456:36:2" + }, + "returnParameters": { + "id": 3280, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3279, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3292, + "src": "15540:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3278, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "15540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "15539:8:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3737, + "nodeType": "FunctionDefinition", + "src": "16122:3214:2", + "body": { + "id": 3736, + "nodeType": "Block", + "src": "16222:3114:2", + "statements": [ + { + "assignments": [ + 3302 + ], + "declarations": [ + { + "constant": false, + "id": 3302, + "mutability": "mutable", + "name": "who", + "nameLocation": "16240:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16232:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3301, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16232:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3305, + "initialValue": { + "expression": { + "id": 3303, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16246:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3304, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "16246:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16232:26:2" + }, + { + "assignments": [ + 3307 + ], + "declarations": [ + { + "constant": false, + "id": 3307, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "16275:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16268:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3306, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "16268:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3310, + "initialValue": { + "expression": { + "id": 3308, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16282:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3309, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "16282:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16268:23:2" + }, + { + "assignments": [ + 3312 + ], + "declarations": [ + { + "constant": false, + "id": 3312, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "16309:11:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16301:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3311, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3315, + "initialValue": { + "expression": { + "id": 3313, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16323:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3314, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "16323:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16301:33:2" + }, + { + "assignments": [ + 3320 + ], + "declarations": [ + { + "constant": false, + "id": 3320, + "mutability": "mutable", + "name": "ins", + "nameLocation": "16361:3:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16344:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3318, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16344:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3319, + "nodeType": "ArrayTypeName", + "src": "16344:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3323, + "initialValue": { + "expression": { + "id": 3321, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16367:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "16367:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16344:33:2" + }, + { + "condition": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3324, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3325, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "16428:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3327, + "indexExpression": { + "id": 3326, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16439:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3329, + "indexExpression": { + "id": 3328, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16444:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3337, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3333, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16477:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3334, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16482:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3331, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16460:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3332, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16460:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3335, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16460:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3330, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16450:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3336, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16450:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16428:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3354, + "nodeType": "IfStatement", + "src": "16424:174:2", + "trueBody": { + "id": 3353, + "nodeType": "Block", + "src": "16498:100:2", + "statements": [ + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3338, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "16519:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3339, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "16519:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3341, + "indexExpression": { + "id": 3340, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16530:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3343, + "indexExpression": { + "id": 3342, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16535:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3351, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3347, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16568:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3348, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16573:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3345, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16551:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3346, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16551:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3349, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16551:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3344, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "16541:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16541:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "16519:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3352, + "nodeType": "Return", + "src": "16512:75:2" + } + ] + } + }, + { + "assignments": [ + 3356 + ], + "declarations": [ + { + "constant": false, + "id": 3356, + "mutability": "mutable", + "name": "cald", + "nameLocation": "16620:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16607:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3355, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16607:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3364, + "initialValue": { + "arguments": [ + { + "id": 3359, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "16644:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3361, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "16658:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3360, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "16650:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16650:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3357, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "16627:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3358, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "16627:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16607:56:2" + }, + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 3365, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16673:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "record", + "nodeType": "MemberAccess", + "referencedDeclaration": 4756, + "src": "16673:19:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 3368, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16673:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3369, + "nodeType": "ExpressionStatement", + "src": "16673:21:2" + }, + { + "assignments": [ + 3371 + ], + "declarations": [ + { + "constant": false, + "id": 3371, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "16712:4:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16704:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3370, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16704:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3372, + "nodeType": "VariableDeclarationStatement", + "src": "16704:12:2" + }, + { + "id": 3389, + "nodeType": "Block", + "src": "16726:126:2", + "statements": [ + { + "assignments": [ + null, + 3374 + ], + "declarations": [ + null, + { + "constant": false, + "id": 3374, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "16756:4:2", + "nodeType": "VariableDeclaration", + "scope": 3389, + "src": "16743:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3373, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "16743:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3379, + "initialValue": { + "arguments": [ + { + "id": 3377, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "16779:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3375, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16764:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3376, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "16764:14:2", + "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": 3378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16764:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16740:44:2" + }, + { + "expression": { + "id": 3387, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3380, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "16798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3382, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3374, + "src": "16820:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3385, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3383, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16826:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3384, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "16829:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "16826:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3381, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "16805:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3386, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16805:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "16798:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3388, + "nodeType": "ExpressionStatement", + "src": "16798:43:2" + } + ] + }, + { + "assignments": [ + 3394, + null + ], + "declarations": [ + { + "constant": false, + "id": 3394, + "mutability": "mutable", + "name": "reads", + "nameLocation": "16880:5:2", + "nodeType": "VariableDeclaration", + "scope": 3736, + "src": "16863:22:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3392, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16863:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3393, + "nodeType": "ArrayTypeName", + "src": "16863:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + }, + null + ], + "id": 3402, + "initialValue": { + "arguments": [ + { + "arguments": [ + { + "id": 3399, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "16921:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3398, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "16913:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 3397, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "16913:7:2", + "typeDescriptions": {} + } + }, + "id": 3400, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16913:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 3395, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16891:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3396, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "accesses", + "nodeType": "MemberAccess", + "referencedDeclaration": 4767, + "src": "16891:21:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "function (address) external returns (bytes32[] memory,bytes32[] memory)" + } + }, + "id": 3401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16891:35:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_array$_t_bytes32_$dyn_memory_ptr_$_t_array$_t_bytes32_$dyn_memory_ptr_$", + "typeString": "tuple(bytes32[] memory,bytes32[] memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16862:64:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3403, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "16940:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3404, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "16940:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 3405, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "16956:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "16940:17:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3508, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 3505, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17649:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3506, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17649:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "31", + "id": 3507, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17664:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "17649:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 3684, + "nodeType": "Block", + "src": "18887:107:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18909:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a204e6f2073746f726167652075736520646574656374656420666f72207461726765742e", + "id": 3681, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18916:66:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + }, + "value": "stdStorage find(StdStorage): No storage use detected for target." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_328ff448bebe6b9a52a670e66989b0a23c94fd0cbd86c30e5432c6ddc5340283", + "typeString": "literal_string \"stdStorage find(StdStorage): No storage use detected for target.\"" + } + ], + "id": 3679, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "18901:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18901:82:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3683, + "nodeType": "ExpressionStatement", + "src": "18901:82:2" + } + ] + }, + "id": 3685, + "nodeType": "IfStatement", + "src": "17645:1349:2", + "trueBody": { + "id": 3678, + "nodeType": "Block", + "src": "17667:1214:2", + "statements": [ + { + "body": { + "id": 3676, + "nodeType": "Block", + "src": "17724:1147:2", + "statements": [ + { + "assignments": [ + 3521 + ], + "declarations": [ + { + "constant": false, + "id": 3521, + "mutability": "mutable", + "name": "prev", + "nameLocation": "17750:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "17742:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3520, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17742:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3529, + "initialValue": { + "arguments": [ + { + "id": 3524, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17775:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3525, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17780:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3527, + "indexExpression": { + "id": 3526, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17786:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17780:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3522, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17757:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3523, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "17757:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17757:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "17742:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3535, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3530, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "17811:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3533, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17827:1:2", + "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": 3532, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17819:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3531, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17819:7:2", + "typeDescriptions": {} + } + }, + "id": 3534, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17819:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17811:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3547, + "nodeType": "IfStatement", + "src": "17807:114:2", + "trueBody": { + "id": 3546, + "nodeType": "Block", + "src": "17831:90:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3537, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17879:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3540, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17892:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3542, + "indexExpression": { + "id": 3541, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17898:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17892:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3539, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17884:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3538, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17884:7:2", + "typeDescriptions": {} + } + }, + "id": 3543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17884:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3536, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17858:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3544, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17858:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3545, + "nodeType": "EmitStatement", + "src": "17853:49:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3551, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17982:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3552, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17987:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3554, + "indexExpression": { + "id": 3553, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17993:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17987:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "hexValue": "1337", + "id": 3557, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18005:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3556, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17997:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3555, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17997:7:2", + "typeDescriptions": {} + } + }, + "id": 3558, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17997:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3548, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "17963:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "17963:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3559, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17963:53:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3560, + "nodeType": "ExpressionStatement", + "src": "17963:53:2" + }, + { + "assignments": [ + 3562 + ], + "declarations": [ + { + "constant": false, + "id": 3562, + "mutability": "mutable", + "name": "success", + "nameLocation": "18039:7:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18034:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3561, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "18034:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "id": 3563, + "nodeType": "VariableDeclarationStatement", + "src": "18034:12:2" + }, + { + "assignments": [ + 3565 + ], + "declarations": [ + { + "constant": false, + "id": 3565, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "18077:4:2", + "nodeType": "VariableDeclaration", + "scope": 3676, + "src": "18064:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3564, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "18064:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3566, + "nodeType": "VariableDeclarationStatement", + "src": "18064:17:2" + }, + { + "id": 3585, + "nodeType": "Block", + "src": "18099:144:2", + "statements": [ + { + "expression": { + "id": 3574, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "components": [ + { + "id": 3567, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18122:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "id": 3568, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18131:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "id": 3569, + "isConstant": false, + "isInlineArray": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "TupleExpression", + "src": "18121:15:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3572, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3356, + "src": "18154:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3570, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18139:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3571, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "18139:14:2", + "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": 3573, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18139:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "src": "18121:38:2", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3575, + "nodeType": "ExpressionStatement", + "src": "18121:38:2" + }, + { + "expression": { + "id": 3583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 3576, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18181:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3578, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3565, + "src": "18203:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3581, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 3579, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18209:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 3580, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18212:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18209:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3577, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "18188:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 3582, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18188:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18181:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3584, + "nodeType": "ExpressionStatement", + "src": "18181:43:2" + } + ] + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 3593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3586, + "name": "success", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3562, + "src": "18265:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3592, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3587, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "18276:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "1337", + "id": 3590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "hexString", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18292:9:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + }, + "value": "\u00137" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_2636a8beb2c41b8ccafa9a55a5a5e333892a83b491df3a67d2768946a9f9c6dc", + "typeString": "literal_string hex\"1337\"" + } + ], + "id": 3589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18284:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3588, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "18284:7:2", + "typeDescriptions": {} + } + }, + "id": 3591, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18284:18:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "18276:26:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "18265:37:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3665, + "nodeType": "IfStatement", + "src": "18261:539:2", + "trueBody": { + "id": 3664, + "nodeType": "Block", + "src": "18304:496:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3595, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18410:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3596, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18415:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3600, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18448:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3601, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18453:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3598, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18431:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18431:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3602, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18431:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3597, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18421:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3603, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18421:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3606, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18476:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3608, + "indexExpression": { + "id": 3607, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18482:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18476:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18468:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3604, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18468:7:2", + "typeDescriptions": {} + } + }, + "id": 3609, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18468:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3594, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "18400:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3610, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18400:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3611, + "nodeType": "EmitStatement", + "src": "18395:91:2" + }, + { + "expression": { + "id": 3633, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3612, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18508:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3623, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "18508:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3624, + "indexExpression": { + "id": 3614, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18519:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3625, + "indexExpression": { + "id": 3615, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18524:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18508:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3626, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3619, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18557:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3620, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18562:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3617, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18540:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3618, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18540:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18540:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3616, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18530:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3622, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18530:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18508:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3629, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18587:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3631, + "indexExpression": { + "id": 3630, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18593:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18587:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3628, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "18579:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3627, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "18579:7:2", + "typeDescriptions": {} + } + }, + "id": 3632, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18579:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "18508:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3634, + "nodeType": "ExpressionStatement", + "src": "18508:88:2" + }, + { + "expression": { + "id": 3651, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3635, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "18618:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3646, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "18618:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3647, + "indexExpression": { + "id": 3637, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18629:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3648, + "indexExpression": { + "id": 3638, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "18634:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18618:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3649, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3642, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "18667:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3643, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "18672:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3640, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "18650:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3641, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "18650:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3644, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18650:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3639, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "18640:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18640:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "18618:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3650, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "18689:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "18618:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3652, + "nodeType": "ExpressionStatement", + "src": "18618:75:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3656, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3657, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18739:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3659, + "indexExpression": { + "id": 3658, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18745:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18739:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3660, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3653, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18715:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3655, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18715:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18715:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3662, + "nodeType": "ExpressionStatement", + "src": "18715:39:2" + }, + { + "id": 3663, + "nodeType": "Break", + "src": "18776:5:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 3669, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "18836:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3670, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "18841:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3672, + "indexExpression": { + "id": 3671, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "18847:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "18841:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 3673, + "name": "prev", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3521, + "src": "18851:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3666, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "18817:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "18817:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "18817:39:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3675, + "nodeType": "ExpressionStatement", + "src": "18817:39:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3516, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3513, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17701:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 3514, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17705:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3515, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "17705:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17701:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3677, + "initializationExpression": { + "assignments": [ + 3510 + ], + "declarations": [ + { + "constant": false, + "id": 3510, + "mutability": "mutable", + "name": "i", + "nameLocation": "17694:1:2", + "nodeType": "VariableDeclaration", + "scope": 3677, + "src": "17686:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3509, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17686:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3512, + "initialValue": { + "hexValue": "30", + "id": 3511, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17698:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "17686:13:2" + }, + "loopExpression": { + "expression": { + "id": 3518, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "17719:3:2", + "subExpression": { + "id": 3517, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3510, + "src": "17719:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3519, + "nodeType": "ExpressionStatement", + "src": "17719:3:2" + }, + "nodeType": "ForStatement", + "src": "17681:1190:2" + } + ] + } + }, + "id": 3686, + "nodeType": "IfStatement", + "src": "16936:2058:2", + "trueBody": { + "id": 3504, + "nodeType": "Block", + "src": "16959:680:2", + "statements": [ + { + "assignments": [ + 3408 + ], + "declarations": [ + { + "constant": false, + "id": 3408, + "mutability": "mutable", + "name": "curr", + "nameLocation": "16981:4:2", + "nodeType": "VariableDeclaration", + "scope": 3504, + "src": "16973:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3407, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "16973:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3416, + "initialValue": { + "arguments": [ + { + "id": 3411, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17006:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "baseExpression": { + "id": 3412, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17011:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3414, + "indexExpression": { + "hexValue": "30", + "id": 3413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17017:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17011:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 3409, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "16988:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 3410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "16988:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 3415, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "16988:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "16973:47:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3422, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3417, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17038:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "arguments": [ + { + "hexValue": "30", + "id": 3420, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17054:1:2", + "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": 3419, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17046:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3418, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "17046:7:2", + "typeDescriptions": {} + } + }, + "id": 3421, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17046:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17038:18:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3434, + "nodeType": "IfStatement", + "src": "17034:106:2", + "trueBody": { + "id": 3433, + "nodeType": "Block", + "src": "17058:82:2", + "statements": [ + { + "eventCall": { + "arguments": [ + { + "id": 3424, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17102:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3427, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17115:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3429, + "indexExpression": { + "hexValue": "30", + "id": 3428, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17121:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17115:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3426, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17107:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17107:7:2", + "typeDescriptions": {} + } + }, + "id": 3430, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17107:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3423, + "name": "WARNING_UninitedSlot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3251, + "src": "17081:20:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,uint256)" + } + }, + "id": 3431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17081:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3432, + "nodeType": "EmitStatement", + "src": "17076:49:2" + } + ] + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 3437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 3435, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3371, + "src": "17157:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 3436, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3408, + "src": "17165:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "17157:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3444, + "nodeType": "IfStatement", + "src": "17153:180:2", + "trueBody": { + "id": 3443, + "nodeType": "Block", + "src": "17171:162:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 3439, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17197:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 3440, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17204:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 3438, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "17189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3441, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17189:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3442, + "nodeType": "ExpressionStatement", + "src": "17189:129:2" + } + ] + } + }, + { + "eventCall": { + "arguments": [ + { + "id": 3446, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17361:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 3447, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17366:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "id": 3451, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17399:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3452, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17404:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3449, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17382:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3450, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17382:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3453, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17382:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3448, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17372:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3454, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17372:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "arguments": [ + { + "baseExpression": { + "id": 3457, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17427:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3459, + "indexExpression": { + "hexValue": "30", + "id": 3458, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17433:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17427:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3456, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17419:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3455, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17419:7:2", + "typeDescriptions": {} + } + }, + "id": 3460, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17419:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3445, + "name": "SlotFound", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3245, + "src": "17351:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bytes4_$_t_bytes32_$_t_uint256_$returns$__$", + "typeString": "function (address,bytes4,bytes32,uint256)" + } + }, + "id": 3461, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17351:86:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3462, + "nodeType": "EmitStatement", + "src": "17346:91:2" + }, + { + "expression": { + "id": 3484, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3463, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17451:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3474, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "17451:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3475, + "indexExpression": { + "id": 3465, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17462:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3476, + "indexExpression": { + "id": 3466, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17467:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17451:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3477, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3470, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17500:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3471, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17505:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3468, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17483:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17483:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17483:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3467, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17473:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17473:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17451:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "baseExpression": { + "id": 3480, + "name": "reads", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3394, + "src": "17530:5:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 3482, + "indexExpression": { + "hexValue": "30", + "id": 3481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17536:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17530:8:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3479, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "17522:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3478, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "17522:7:2", + "typeDescriptions": {} + } + }, + "id": 3483, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17522:17:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "17451:88:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3485, + "nodeType": "ExpressionStatement", + "src": "17451:88:2" + }, + { + "expression": { + "id": 3502, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3486, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "17553:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3497, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "17553:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3498, + "indexExpression": { + "id": 3488, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "17564:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3499, + "indexExpression": { + "id": 3489, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "17569:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "17553:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3500, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3493, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "17602:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3494, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "17607:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3491, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "17585:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3492, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "17585:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3495, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17585:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3490, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "17575:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3496, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17575:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "17553:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 3501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "17624:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "17553:75:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 3503, + "nodeType": "ExpressionStatement", + "src": "17553:75:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3688, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19012:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3689, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "19012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3691, + "indexExpression": { + "id": 3690, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19023:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 3693, + "indexExpression": { + "id": 3692, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19028:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 3701, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3697, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19061:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3698, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19066:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3695, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19044:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19044:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3699, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19044:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3694, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19034:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19034:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19012:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a20536c6f74287329206e6f7420666f756e642e", + "id": 3702, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "19082:49:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + }, + "value": "stdStorage find(StdStorage): Slot(s) not found." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_47c274d4780c7bff83310cd576005a97888a2b2935c22f84e1e5282c1bfb39a8", + "typeString": "literal_string \"stdStorage find(StdStorage): Slot(s) not found.\"" + } + ], + "id": 3687, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "19004:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 3703, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19004:128:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3704, + "nodeType": "ExpressionStatement", + "src": "19004:128:2" + }, + { + "expression": { + "id": 3707, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19143:19:2", + "subExpression": { + "expression": { + "id": 3705, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3706, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19150:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3708, + "nodeType": "ExpressionStatement", + "src": "19143:19:2" + }, + { + "expression": { + "id": 3711, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19172:16:2", + "subExpression": { + "expression": { + "id": 3709, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19179:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3710, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19179:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3712, + "nodeType": "ExpressionStatement", + "src": "19172:16:2" + }, + { + "expression": { + "id": 3715, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19198:17:2", + "subExpression": { + "expression": { + "id": 3713, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19205:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3714, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19205:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3716, + "nodeType": "ExpressionStatement", + "src": "19198:17:2" + }, + { + "expression": { + "id": 3719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "19225:18:2", + "subExpression": { + "expression": { + "id": 3717, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19232:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3718, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "19232:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3720, + "nodeType": "ExpressionStatement", + "src": "19225:18:2" + }, + { + "expression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3721, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3296, + "src": "19261:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3722, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "19261:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 3724, + "indexExpression": { + "id": 3723, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3302, + "src": "19272:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 3726, + "indexExpression": { + "id": 3725, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3307, + "src": "19277:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 3734, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 3730, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3320, + "src": "19310:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 3731, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3312, + "src": "19315:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 3728, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "19293:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3729, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "19293:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3732, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19293:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 3727, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "19283:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 3733, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19283:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "19261:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3300, + "id": 3735, + "nodeType": "Return", + "src": "19254:75:2" + } + ] + }, + "documentation": { + "id": 3293, + "nodeType": "StructuredDocumentation", + "src": "15614:129:2", + "text": "@notice find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against" + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "find", + "nameLocation": "16131:4:2", + "parameters": { + "id": 3297, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3296, + "mutability": "mutable", + "name": "self", + "nameLocation": "16164:4:2", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16145:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3295, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3294, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "16145:10:2" + }, + "referencedDeclaration": 3235, + "src": "16145:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "16135:39:2" + }, + "returnParameters": { + "id": 3300, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3299, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3737, + "src": "16209:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3298, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "16209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "16208:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3757, + "nodeType": "FunctionDefinition", + "src": "19342:156:2", + "body": { + "id": 3756, + "nodeType": "Block", + "src": "19438:60:2", + "statements": [ + { + "expression": { + "id": 3752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3748, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19448:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3750, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "19448:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3751, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3742, + "src": "19463:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "19448:22:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 3753, + "nodeType": "ExpressionStatement", + "src": "19448:22:2" + }, + { + "expression": { + "id": 3754, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3740, + "src": "19487:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3747, + "id": 3755, + "nodeType": "Return", + "src": "19480:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "target", + "nameLocation": "19351:6:2", + "parameters": { + "id": 3743, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3740, + "mutability": "mutable", + "name": "self", + "nameLocation": "19377:4:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19358:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3739, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3738, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19358:10:2" + }, + "referencedDeclaration": 3235, + "src": "19358:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3742, + "mutability": "mutable", + "name": "_target", + "nameLocation": "19391:7:2", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19383:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3741, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19383:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19357:42:2" + }, + "returnParameters": { + "id": 3747, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3746, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3757, + "src": "19418:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3745, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3744, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19418:10:2" + }, + "referencedDeclaration": 3235, + "src": "19418:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19417:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3777, + "nodeType": "FunctionDefinition", + "src": "19504:143:2", + "body": { + "id": 3776, + "nodeType": "Block", + "src": "19593:54:2", + "statements": [ + { + "expression": { + "id": 3772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3768, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19603:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19603:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3771, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3762, + "src": "19615:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19603:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3773, + "nodeType": "ExpressionStatement", + "src": "19603:16:2" + }, + { + "expression": { + "id": 3774, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3760, + "src": "19636:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3767, + "id": 3775, + "nodeType": "Return", + "src": "19629:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19513:3:2", + "parameters": { + "id": 3763, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3760, + "mutability": "mutable", + "name": "self", + "nameLocation": "19536:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19517:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3759, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3758, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19517:10:2" + }, + "referencedDeclaration": 3235, + "src": "19517:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3762, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19549:4:2", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19542:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3761, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "19542:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "src": "19516:38:2" + }, + "returnParameters": { + "id": 3767, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3766, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3777, + "src": "19573:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3765, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3764, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19573:10:2" + }, + "referencedDeclaration": 3235, + "src": "19573:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19572:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3799, + "nodeType": "FunctionDefinition", + "src": "19653:156:2", + "body": { + "id": 3798, + "nodeType": "Block", + "src": "19749:60:2", + "statements": [ + { + "expression": { + "id": 3794, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3788, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19759:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3790, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "19759:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 3792, + "name": "_sig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3782, + "src": "19776:4:2", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "id": 3791, + "name": "sigs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3292, + "src": "19771:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_string_memory_ptr_$returns$_t_bytes4_$", + "typeString": "function (string memory) pure returns (bytes4)" + } + }, + "id": 3793, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19771:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "src": "19759:22:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "id": 3795, + "nodeType": "ExpressionStatement", + "src": "19759:22:2" + }, + { + "expression": { + "id": 3796, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3780, + "src": "19798:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3787, + "id": 3797, + "nodeType": "Return", + "src": "19791:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "sig", + "nameLocation": "19662:3:2", + "parameters": { + "id": 3783, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3780, + "mutability": "mutable", + "name": "self", + "nameLocation": "19685:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19666:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3779, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3778, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19666:10:2" + }, + "referencedDeclaration": 3235, + "src": "19666:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3782, + "mutability": "mutable", + "name": "_sig", + "nameLocation": "19705:4:2", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19691:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 3781, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "19691:6:2", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + } + ], + "src": "19665:45:2" + }, + "returnParameters": { + "id": 3787, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3786, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3799, + "src": "19729:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3785, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3784, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19729:10:2" + }, + "referencedDeclaration": 3235, + "src": "19729:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19728:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3830, + "nodeType": "FunctionDefinition", + "src": "19815:179:2", + "body": { + "id": 3829, + "nodeType": "Block", + "src": "19909:85:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3821, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3804, + "src": "19959:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19951:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3819, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "19951:7:2", + "typeDescriptions": {} + } + }, + "id": 3822, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19951:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19943:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3817, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "19943:7:2", + "typeDescriptions": {} + } + }, + "id": 3823, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19943:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "19935:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3815, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "19935:7:2", + "typeDescriptions": {} + } + }, + "id": 3824, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19935:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3810, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19919:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3813, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "19919:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3814, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "19919:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "19919:47:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3826, + "nodeType": "ExpressionStatement", + "src": "19919:47:2" + }, + { + "expression": { + "id": 3827, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3802, + "src": "19983:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3809, + "id": 3828, + "nodeType": "Return", + "src": "19976:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "19824:8:2", + "parameters": { + "id": 3805, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3802, + "mutability": "mutable", + "name": "self", + "nameLocation": "19852:4:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19833:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3801, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3800, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19833:10:2" + }, + "referencedDeclaration": 3235, + "src": "19833:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3804, + "mutability": "mutable", + "name": "who", + "nameLocation": "19866:3:2", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19858:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3803, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "19858:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "19832:38:2" + }, + "returnParameters": { + "id": 3809, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3808, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3830, + "src": "19889:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3807, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3806, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "19889:10:2" + }, + "referencedDeclaration": 3235, + "src": "19889:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "19888:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3855, + "nodeType": "FunctionDefinition", + "src": "20000:161:2", + "body": { + "id": 3854, + "nodeType": "Block", + "src": "20094:67:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 3848, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3835, + "src": "20128:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3847, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20120:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3846, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20120:7:2", + "typeDescriptions": {} + } + }, + "id": 3849, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20120:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3841, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20104:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3844, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20104:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3845, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20104:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20104:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3851, + "nodeType": "ExpressionStatement", + "src": "20104:29:2" + }, + { + "expression": { + "id": 3852, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3833, + "src": "20150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3840, + "id": 3853, + "nodeType": "Return", + "src": "20143:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20009:8:2", + "parameters": { + "id": 3836, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3833, + "mutability": "mutable", + "name": "self", + "nameLocation": "20037:4:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20018:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3832, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3831, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20018:10:2" + }, + "referencedDeclaration": 3235, + "src": "20018:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3835, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20051:3:2", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20043:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3834, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20043:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20017:38:2" + }, + "returnParameters": { + "id": 3840, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3839, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3855, + "src": "20074:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3838, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3837, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20074:10:2" + }, + "referencedDeclaration": 3235, + "src": "20074:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20073:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3877, + "nodeType": "FunctionDefinition", + "src": "20166:152:2", + "body": { + "id": 3876, + "nodeType": "Block", + "src": "20260:58:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3871, + "name": "key", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3860, + "src": "20286:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "expression": { + "id": 3866, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20270:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3869, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "20270:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "id": 3870, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "push", + "nodeType": "MemberAccess", + "src": "20270:15:2", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_bytes32_$dyn_storage_ptr_$_t_bytes32_$returns$__$bound_to$_t_array$_t_bytes32_$dyn_storage_ptr_$", + "typeString": "function (bytes32[] storage pointer,bytes32)" + } + }, + "id": 3872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20270:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3873, + "nodeType": "ExpressionStatement", + "src": "20270:20:2" + }, + { + "expression": { + "id": 3874, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3858, + "src": "20307:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3865, + "id": 3875, + "nodeType": "Return", + "src": "20300:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "with_key", + "nameLocation": "20175:8:2", + "parameters": { + "id": 3861, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3858, + "mutability": "mutable", + "name": "self", + "nameLocation": "20203:4:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20184:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3857, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3856, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20184:10:2" + }, + "referencedDeclaration": 3235, + "src": "20184:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3860, + "mutability": "mutable", + "name": "key", + "nameLocation": "20217:3:2", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20209:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3859, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20209:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "20183:38:2" + }, + "returnParameters": { + "id": 3865, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3864, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3877, + "src": "20240:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3863, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3862, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20240:10:2" + }, + "referencedDeclaration": 3235, + "src": "20240:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20239:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3897, + "nodeType": "FunctionDefinition", + "src": "20324:152:2", + "body": { + "id": 3896, + "nodeType": "Block", + "src": "20418:58:2", + "statements": [ + { + "expression": { + "id": 3892, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "id": 3888, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20428:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3890, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "20428:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 3891, + "name": "_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3882, + "src": "20442:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "20428:20:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3893, + "nodeType": "ExpressionStatement", + "src": "20428:20:2" + }, + { + "expression": { + "id": 3894, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3880, + "src": "20465:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "functionReturnParameters": 3887, + "id": 3895, + "nodeType": "Return", + "src": "20458:11:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "depth", + "nameLocation": "20333:5:2", + "parameters": { + "id": 3883, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3880, + "mutability": "mutable", + "name": "self", + "nameLocation": "20358:4:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20339:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3879, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3878, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20339:10:2" + }, + "referencedDeclaration": 3235, + "src": "20339:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3882, + "mutability": "mutable", + "name": "_depth", + "nameLocation": "20372:6:2", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20364:14:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3881, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20364:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20338:41:2" + }, + "returnParameters": { + "id": 3887, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3886, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 3897, + "src": "20398:18:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3885, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3884, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20398:10:2" + }, + "referencedDeclaration": 3235, + "src": "20398:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "20397:20:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3920, + "nodeType": "FunctionDefinition", + "src": "20482:138:2", + "body": { + "id": 3919, + "nodeType": "Block", + "src": "20552:68:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3906, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3900, + "src": "20576:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "id": 3913, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3902, + "src": "20606:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 3912, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20598:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint160_$", + "typeString": "type(uint160)" + }, + "typeName": { + "id": 3911, + "name": "uint160", + "nodeType": "ElementaryTypeName", + "src": "20598:7:2", + "typeDescriptions": {} + } + }, + "id": 3914, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20598:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint160", + "typeString": "uint160" + } + ], + "id": 3910, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20590:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 3909, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20590:7:2", + "typeDescriptions": {} + } + }, + "id": 3915, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20590:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3908, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20582:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3907, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20582:7:2", + "typeDescriptions": {} + } + }, + "id": 3916, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20582:30:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3905, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20562:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3917, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20562:51:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3918, + "nodeType": "ExpressionStatement", + "src": "20562:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20491:13:2", + "parameters": { + "id": 3903, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3900, + "mutability": "mutable", + "name": "self", + "nameLocation": "20524:4:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20505:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3899, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3898, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20505:10:2" + }, + "referencedDeclaration": 3235, + "src": "20505:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3902, + "mutability": "mutable", + "name": "who", + "nameLocation": "20538:3:2", + "nodeType": "VariableDeclaration", + "scope": 3920, + "src": "20530:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3901, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "20530:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "20504:38:2" + }, + "returnParameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [], + "src": "20552:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3937, + "nodeType": "FunctionDefinition", + "src": "20626:120:2", + "body": { + "id": 3936, + "nodeType": "Block", + "src": "20696:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 3929, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3923, + "src": "20720:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "arguments": [ + { + "id": 3932, + "name": "amt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3925, + "src": "20734:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3931, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "20726:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 3930, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20726:7:2", + "typeDescriptions": {} + } + }, + "id": 3933, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20726:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3928, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20706:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3934, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20706:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3935, + "nodeType": "ExpressionStatement", + "src": "20706:33:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20635:13:2", + "parameters": { + "id": 3926, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3923, + "mutability": "mutable", + "name": "self", + "nameLocation": "20668:4:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20649:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3922, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3921, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20649:10:2" + }, + "referencedDeclaration": 3235, + "src": "20649:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3925, + "mutability": "mutable", + "name": "amt", + "nameLocation": "20682:3:2", + "nodeType": "VariableDeclaration", + "scope": 3937, + "src": "20674:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3924, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "20674:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "20648:38:2" + }, + "returnParameters": { + "id": 3927, + "nodeType": "ParameterList", + "parameters": [], + "src": "20696:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 3955, + "nodeType": "FunctionDefinition", + "src": "20752:222:2", + "body": { + "id": 3954, + "nodeType": "Block", + "src": "20821:153:2", + "statements": [ + { + "assignments": [ + 3946 + ], + "declarations": [ + { + "constant": false, + "id": 3946, + "mutability": "mutable", + "name": "t", + "nameLocation": "20839:1:2", + "nodeType": "VariableDeclaration", + "scope": 3954, + "src": "20831:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3945, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "20831:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 3947, + "nodeType": "VariableDeclarationStatement", + "src": "20831:9:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "20902:34:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "20916:10:2", + "value": { + "name": "write", + "nodeType": "YulIdentifier", + "src": "20921:5:2" + }, + "variableNames": [ + { + "name": "t", + "nodeType": "YulIdentifier", + "src": "20916:1:2" + } + ] + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 3946, + "isOffset": false, + "isSlot": false, + "src": "20916:1:2", + "valueSize": 1 + }, + { + "declaration": 3942, + "isOffset": false, + "isSlot": false, + "src": "20921:5:2", + "valueSize": 1 + } + ], + "id": 3948, + "nodeType": "InlineAssembly", + "src": "20893:43:2" + }, + { + "expression": { + "arguments": [ + { + "id": 3950, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3940, + "src": "20959:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + { + "id": 3951, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3946, + "src": "20965:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "id": 3949, + "name": "checked_write", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 3920, + 3937, + 3955, + 4100 + ], + "referencedDeclaration": 4100, + "src": "20945:13:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$_t_bytes32_$returns$__$", + "typeString": "function (struct StdStorage storage pointer,bytes32)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "20945:22:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "ExpressionStatement", + "src": "20945:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20761:13:2", + "parameters": { + "id": 3943, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3940, + "mutability": "mutable", + "name": "self", + "nameLocation": "20794:4:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20775:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3939, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3938, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "20775:10:2" + }, + "referencedDeclaration": 3235, + "src": "20775:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3942, + "mutability": "mutable", + "name": "write", + "nameLocation": "20805:5:2", + "nodeType": "VariableDeclaration", + "scope": 3955, + "src": "20800:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3941, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "20800:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "20774:37:2" + }, + "returnParameters": { + "id": 3944, + "nodeType": "ParameterList", + "parameters": [], + "src": "20821:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4100, + "nodeType": "FunctionDefinition", + "src": "20980:1089:2", + "body": { + "id": 4099, + "nodeType": "Block", + "src": "21072:997:2", + "statements": [ + { + "assignments": [ + 3964 + ], + "declarations": [ + { + "constant": false, + "id": 3964, + "mutability": "mutable", + "name": "who", + "nameLocation": "21090:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21082:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3963, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "21082:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 3967, + "initialValue": { + "expression": { + "id": 3965, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21096:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21096:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21082:26:2" + }, + { + "assignments": [ + 3969 + ], + "declarations": [ + { + "constant": false, + "id": 3969, + "mutability": "mutable", + "name": "fsig", + "nameLocation": "21125:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21118:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + "typeName": { + "id": 3968, + "name": "bytes4", + "nodeType": "ElementaryTypeName", + "src": "21118:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "visibility": "internal" + } + ], + "id": 3972, + "initialValue": { + "expression": { + "id": 3970, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21132:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3971, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21132:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21118:23:2" + }, + { + "assignments": [ + 3974 + ], + "declarations": [ + { + "constant": false, + "id": 3974, + "mutability": "mutable", + "name": "field_depth", + "nameLocation": "21159:11:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21151:19:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3973, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "21151:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 3977, + "initialValue": { + "expression": { + "id": 3975, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21173:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3976, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "21173:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21151:33:2" + }, + { + "assignments": [ + 3982 + ], + "declarations": [ + { + "constant": false, + "id": 3982, + "mutability": "mutable", + "name": "ins", + "nameLocation": "21211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21194:20:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 3980, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21194:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 3981, + "nodeType": "ArrayTypeName", + "src": "21194:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "id": 3985, + "initialValue": { + "expression": { + "id": 3983, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21217:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3984, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "21217:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21194:33:2" + }, + { + "assignments": [ + 3987 + ], + "declarations": [ + { + "constant": false, + "id": 3987, + "mutability": "mutable", + "name": "cald", + "nameLocation": "21251:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21238:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 3986, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21238:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 3995, + "initialValue": { + "arguments": [ + { + "id": 3990, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21275:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + { + "arguments": [ + { + "id": 3992, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21289:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + ], + "id": 3991, + "name": "flatten", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4336, + "src": "21281:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_array$_t_bytes32_$dyn_memory_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (bytes32[] memory) pure returns (bytes memory)" + } + }, + "id": 3993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21281:12:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + }, + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 3988, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21258:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 3989, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21258:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 3994, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21258:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21238:56:2" + }, + { + "condition": { + "id": 4010, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "21308:69:2", + "subExpression": { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 3996, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21309:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "finds", + "nodeType": "MemberAccess", + "referencedDeclaration": 3223, + "src": "21309:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => bool)))" + } + }, + "id": 3999, + "indexExpression": { + "id": 3998, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21320:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_bool_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => bool))" + } + }, + "id": 4001, + "indexExpression": { + "id": 4000, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21325:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_bool_$", + "typeString": "mapping(bytes32 => bool)" + } + }, + "id": 4009, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4005, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21358:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4006, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21363:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4003, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21341:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21341:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21341:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4002, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21331:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21331:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21309:68:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4016, + "nodeType": "IfStatement", + "src": "21304:110:2", + "trueBody": { + "id": 4015, + "nodeType": "Block", + "src": "21379:35:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 4012, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21398:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4011, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "21393:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4013, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21393:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4014, + "nodeType": "ExpressionStatement", + "src": "21393:10:2" + } + ] + } + }, + { + "assignments": [ + 4018 + ], + "declarations": [ + { + "constant": false, + "id": 4018, + "mutability": "mutable", + "name": "slot", + "nameLocation": "21431:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21423:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4017, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21423:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4036, + "initialValue": { + "arguments": [ + { + "baseExpression": { + "baseExpression": { + "baseExpression": { + "expression": { + "id": 4021, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21446:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4022, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "slots", + "nodeType": "MemberAccess", + "referencedDeclaration": 3215, + "src": "21446:10:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$_$", + "typeString": "mapping(address => mapping(bytes4 => mapping(bytes32 => uint256)))" + } + }, + "id": 4024, + "indexExpression": { + "id": 4023, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21457:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:15:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes4_$_t_mapping$_t_bytes32_$_t_uint256_$_$", + "typeString": "mapping(bytes4 => mapping(bytes32 => uint256))" + } + }, + "id": 4026, + "indexExpression": { + "id": 4025, + "name": "fsig", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3969, + "src": "21462:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:21:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", + "typeString": "mapping(bytes32 => uint256)" + } + }, + "id": 4034, + "indexExpression": { + "arguments": [ + { + "arguments": [ + { + "id": 4030, + "name": "ins", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3982, + "src": "21495:3:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + { + "id": 4031, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21500:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "id": 4028, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "21478:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4029, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "src": "21478:16:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4032, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21478:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 4027, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -8, + "src": "21468:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 4033, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21468:45:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "21446:68:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "21438:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4019, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21438:7:2", + "typeDescriptions": {} + } + }, + "id": 4035, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21438:77:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21423:92:2" + }, + { + "assignments": [ + 4038 + ], + "declarations": [ + { + "constant": false, + "id": 4038, + "mutability": "mutable", + "name": "fdat", + "nameLocation": "21534:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21526:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4037, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21526:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4039, + "nodeType": "VariableDeclarationStatement", + "src": "21526:12:2" + }, + { + "id": 4056, + "nodeType": "Block", + "src": "21548:126:2", + "statements": [ + { + "assignments": [ + null, + 4041 + ], + "declarations": [ + null, + { + "constant": false, + "id": 4041, + "mutability": "mutable", + "name": "rdat", + "nameLocation": "21578:4:2", + "nodeType": "VariableDeclaration", + "scope": 4056, + "src": "21565:17:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4040, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "21565:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4046, + "initialValue": { + "arguments": [ + { + "id": 4044, + "name": "cald", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3987, + "src": "21601:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "expression": { + "id": 4042, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21586:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 4043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "staticcall", + "nodeType": "MemberAccess", + "src": "21586:14:2", + "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": 4045, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21586:20:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$_t_bool_$_t_bytes_memory_ptr_$", + "typeString": "tuple(bool,bytes memory)" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21562:44:2" + }, + { + "expression": { + "id": 4054, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4047, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21620:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "arguments": [ + { + "id": 4049, + "name": "rdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4041, + "src": "21642:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4052, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3332", + "id": 4050, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21648:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "id": 4051, + "name": "field_depth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3974, + "src": "21651:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "21648:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4048, + "name": "bytesToBytes32", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4295, + "src": "21627:14:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_bytes_memory_ptr_$_t_uint256_$returns$_t_bytes32_$", + "typeString": "function (bytes memory,uint256) pure returns (bytes32)" + } + }, + "id": 4053, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21627:36:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21620:43:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4055, + "nodeType": "ExpressionStatement", + "src": "21620:43:2" + } + ] + }, + { + "assignments": [ + 4058 + ], + "declarations": [ + { + "constant": false, + "id": 4058, + "mutability": "mutable", + "name": "curr", + "nameLocation": "21691:4:2", + "nodeType": "VariableDeclaration", + "scope": 4099, + "src": "21683:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4057, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21683:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4064, + "initialValue": { + "arguments": [ + { + "id": 4061, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21716:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4062, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21721:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4059, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21698:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4060, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "21698:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4063, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21698:28:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "21683:43:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4067, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4065, + "name": "fdat", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4038, + "src": "21741:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "id": 4066, + "name": "curr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4058, + "src": "21749:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "21741:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4074, + "nodeType": "IfStatement", + "src": "21737:172:2", + "trueBody": { + "id": 4073, + "nodeType": "Block", + "src": "21755:154:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "hexValue": "66616c7365", + "id": 4069, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + { + "hexValue": "73746453746f726167652066696e642853746453746f72616765293a205061636b656420736c6f742e205468697320776f756c642063617573652064616e6765726f7573206f76657277726974696e6720616e642063757272656e746c792069736e277420737570706f727465642e", + "id": 4070, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "21784:113:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + }, + "value": "stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4bfa78e02b745efea2b29d358f6dc28382f5209b1d2b2dbeb8ef0862e74440b3", + "typeString": "literal_string \"stdStorage find(StdStorage): Packed slot. This would cause dangerous overwriting and currently isn't supported.\"" + } + ], + "id": 4068, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -18, + -18 + ], + "referencedDeclaration": -18, + "src": "21769:7:2", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 4071, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21769:129:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4072, + "nodeType": "ExpressionStatement", + "src": "21769:129:2" + } + ] + } + }, + { + "expression": { + "arguments": [ + { + "id": 4078, + "name": "who", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3964, + "src": "21937:3:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 4079, + "name": "slot", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4018, + "src": "21942:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "id": 4080, + "name": "set", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3960, + "src": "21948:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4075, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "21918:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4077, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "store", + "nodeType": "MemberAccess", + "referencedDeclaration": 4531, + "src": "21918:18:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$", + "typeString": "function (address,bytes32,bytes32) external" + } + }, + "id": 4081, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "21918:34:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4082, + "nodeType": "ExpressionStatement", + "src": "21918:34:2" + }, + { + "expression": { + "id": 4085, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21962:19:2", + "subExpression": { + "expression": { + "id": 4083, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21969:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4084, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "21969:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4086, + "nodeType": "ExpressionStatement", + "src": "21962:19:2" + }, + { + "expression": { + "id": 4089, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "21991:16:2", + "subExpression": { + "expression": { + "id": 4087, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "21998:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4088, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_sig", + "nodeType": "MemberAccess", + "referencedDeclaration": 3228, + "src": "21998:9:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes4", + "typeString": "bytes4" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4090, + "nodeType": "ExpressionStatement", + "src": "21991:16:2" + }, + { + "expression": { + "id": 4093, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22017:17:2", + "subExpression": { + "expression": { + "id": 4091, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22024:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4092, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_keys", + "nodeType": "MemberAccess", + "referencedDeclaration": 3226, + "src": "22024:10:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage", + "typeString": "bytes32[] storage ref" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4094, + "nodeType": "ExpressionStatement", + "src": "22017:17:2" + }, + { + "expression": { + "id": 4097, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "22044:18:2", + "subExpression": { + "expression": { + "id": 4095, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3958, + "src": "22051:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4096, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "_depth", + "nodeType": "MemberAccess", + "referencedDeclaration": 3230, + "src": "22051:11:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4098, + "nodeType": "ExpressionStatement", + "src": "22044:18:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checked_write", + "nameLocation": "20989:13:2", + "parameters": { + "id": 3961, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3958, + "mutability": "mutable", + "name": "self", + "nameLocation": "21031:4:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21012:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 3957, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 3956, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "21012:10:2" + }, + "referencedDeclaration": 3235, + "src": "21012:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 3960, + "mutability": "mutable", + "name": "set", + "nameLocation": "21053:3:2", + "nodeType": "VariableDeclaration", + "scope": 4100, + "src": "21045:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 3959, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "21045:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "21002:60:2" + }, + "returnParameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [], + "src": "21072:0:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4132, + "nodeType": "FunctionDefinition", + "src": "22075:204:2", + "body": { + "id": 4131, + "nodeType": "Block", + "src": "22145:134:2", + "statements": [ + { + "assignments": [ + 4109 + ], + "declarations": [ + { + "constant": false, + "id": 4109, + "mutability": "mutable", + "name": "t", + "nameLocation": "22163:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22155:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4108, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22155:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 4112, + "initialValue": { + "expression": { + "id": 4110, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22167:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + }, + "id": 4111, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "_target", + "nodeType": "MemberAccess", + "referencedDeclaration": 3232, + "src": "22167:12:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22155:24:2" + }, + { + "assignments": [ + 4114 + ], + "declarations": [ + { + "constant": false, + "id": 4114, + "mutability": "mutable", + "name": "s", + "nameLocation": "22197:1:2", + "nodeType": "VariableDeclaration", + "scope": 4131, + "src": "22189:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4113, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22189:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4118, + "initialValue": { + "arguments": [ + { + "id": 4116, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4103, + "src": "22206:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4115, + "name": "find", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3737, + "src": "22201:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_uint256_$", + "typeString": "function (struct StdStorage storage pointer) returns (uint256)" + } + }, + "id": 4117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22201:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22189:22:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4123, + "name": "t", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4109, + "src": "22257:1:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "arguments": [ + { + "id": 4126, + "name": "s", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4114, + "src": "22268:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4125, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22260:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4124, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22260:7:2", + "typeDescriptions": {} + } + }, + "id": 4127, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22260:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4121, + "name": "vm_std_store", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3274, + "src": "22239:12:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Vm_$4964", + "typeString": "contract Vm" + } + }, + "id": 4122, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "load", + "nodeType": "MemberAccess", + "referencedDeclaration": 4522, + "src": "22239:17:2", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_bytes32_$returns$_t_bytes32_$", + "typeString": "function (address,bytes32) external returns (bytes32)" + } + }, + "id": 4128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22239:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + ], + "expression": { + "id": 4119, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22228:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4120, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encode", + "nodeType": "MemberAccess", + "src": "22228:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 4129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22228:44:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4107, + "id": 4130, + "nodeType": "Return", + "src": "22221:51:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read", + "nameLocation": "22084:4:2", + "parameters": { + "id": 4104, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4103, + "mutability": "mutable", + "name": "self", + "nameLocation": "22108:4:2", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22089:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4102, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4101, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22089:10:2" + }, + "referencedDeclaration": 3235, + "src": "22089:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22088:25:2" + }, + "returnParameters": { + "id": 4107, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4106, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4132, + "src": "22131:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4105, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "22131:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "22130:14:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "private" + }, + { + "id": 4151, + "nodeType": "FunctionDefinition", + "src": "22285:131:2", + "body": { + "id": 4150, + "nodeType": "Block", + "src": "22359:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4143, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4135, + "src": "22392:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4142, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22387:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22387:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4146, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22400:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4145, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22400:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4147, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22399:9:2", + "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": 4140, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22376:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4141, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22376:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4148, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22376:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4139, + "id": 4149, + "nodeType": "Return", + "src": "22369:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bytes32", + "nameLocation": "22294:12:2", + "parameters": { + "id": 4136, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4135, + "mutability": "mutable", + "name": "self", + "nameLocation": "22326:4:2", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22307:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4134, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4133, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22307:10:2" + }, + "referencedDeclaration": 3235, + "src": "22307:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22306:25:2" + }, + "returnParameters": { + "id": 4139, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4138, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4151, + "src": "22350:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4137, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "22350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "22349:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4182, + "nodeType": "FunctionDefinition", + "src": "22423:279:2", + "body": { + "id": 4181, + "nodeType": "Block", + "src": "22491:211:2", + "statements": [ + { + "assignments": [ + 4160 + ], + "declarations": [ + { + "constant": false, + "id": 4160, + "mutability": "mutable", + "name": "v", + "nameLocation": "22508:1:2", + "nodeType": "VariableDeclaration", + "scope": 4181, + "src": "22501:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4159, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "22501:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "id": 4164, + "initialValue": { + "arguments": [ + { + "id": 4162, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4154, + "src": "22521:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4161, + "name": "read_int", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4239, + "src": "22512:8:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_int256_$", + "typeString": "function (struct StdStorage storage pointer) returns (int256)" + } + }, + "id": 4163, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22512:14:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "22501:25:2" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4165, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22540:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 4166, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "22540:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4170, + "nodeType": "IfStatement", + "src": "22536:24:2", + "trueBody": { + "expression": { + "hexValue": "66616c7365", + "id": 4168, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22555:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 4158, + "id": 4169, + "nodeType": "Return", + "src": "22548:12:2" + } + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4173, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4171, + "name": "v", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4160, + "src": "22574:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 4172, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22579:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "22574:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4176, + "nodeType": "IfStatement", + "src": "22570:23:2", + "trueBody": { + "expression": { + "hexValue": "74727565", + "id": 4174, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22589:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 4158, + "id": 4175, + "nodeType": "Return", + "src": "22582:11:2" + } + }, + { + "expression": { + "arguments": [ + { + "hexValue": "73746453746f7261676520726561645f626f6f6c2853746453746f72616765293a2043616e6e6f74206465636f64652e204d616b65207375726520796f75206172652072656164696e67206120626f6f6c2e", + "id": 4178, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "22610:84:2", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + }, + "value": "stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool." + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_91e3b02d190bb3e407570bfe894974b331ad10ba40f732248485a8a79ed8e4f5", + "typeString": "literal_string \"stdStorage read_bool(StdStorage): Cannot decode. Make sure you are reading a bool.\"" + } + ], + "id": 4177, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + -19, + -19 + ], + "referencedDeclaration": -19, + "src": "22603:6:2", + "typeDescriptions": { + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" + } + }, + "id": 4179, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22603:92:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4180, + "nodeType": "ExpressionStatement", + "src": "22603:92:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_bool", + "nameLocation": "22432:9:2", + "parameters": { + "id": 4155, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4154, + "mutability": "mutable", + "name": "self", + "nameLocation": "22461:4:2", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22442:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4153, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4152, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22442:10:2" + }, + "referencedDeclaration": 3235, + "src": "22442:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22441:25:2" + }, + "returnParameters": { + "id": 4158, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4157, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4182, + "src": "22485:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 4156, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "22485:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "22484:6:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4201, + "nodeType": "FunctionDefinition", + "src": "22708:131:2", + "body": { + "id": 4200, + "nodeType": "Block", + "src": "22782:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4193, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4185, + "src": "22815:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4192, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22810:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4194, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22810:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4196, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22823:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": { + "id": 4195, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22823:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4197, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22822:9:2", + "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": 4190, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22799:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4191, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22799:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4198, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22799:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "functionReturnParameters": 4189, + "id": 4199, + "nodeType": "Return", + "src": "22792:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_address", + "nameLocation": "22717:12:2", + "parameters": { + "id": 4186, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4185, + "mutability": "mutable", + "name": "self", + "nameLocation": "22749:4:2", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22730:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4184, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4183, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22730:10:2" + }, + "referencedDeclaration": 3235, + "src": "22730:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22729:25:2" + }, + "returnParameters": { + "id": 4189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4188, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4201, + "src": "22773:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "22773:7:2", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "22772:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4220, + "nodeType": "FunctionDefinition", + "src": "22845:128:2", + "body": { + "id": 4219, + "nodeType": "Block", + "src": "22916:57:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4212, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4204, + "src": "22949:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4211, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "22944:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22944:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4215, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "22957:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4214, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22957:7:2", + "typeDescriptions": {} + } + } + ], + "id": 4216, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "22956:9:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + } + ], + "expression": { + "id": 4209, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "22933:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4210, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "22933:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4217, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "22933:33:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4208, + "id": 4218, + "nodeType": "Return", + "src": "22926:40:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_uint", + "nameLocation": "22854:9:2", + "parameters": { + "id": 4205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4204, + "mutability": "mutable", + "name": "self", + "nameLocation": "22883:4:2", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22864:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4203, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4202, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22864:10:2" + }, + "referencedDeclaration": 3235, + "src": "22864:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22863:25:2" + }, + "returnParameters": { + "id": 4208, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4207, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4220, + "src": "22907:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4206, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "22907:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "22906:9:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4239, + "nodeType": "FunctionDefinition", + "src": "22979:125:2", + "body": { + "id": 4238, + "nodeType": "Block", + "src": "23048:56:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4231, + "name": "self", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4223, + "src": "23081:4:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage storage pointer" + } + ], + "id": 4230, + "name": "read", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4132, + "src": "23076:4:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_StdStorage_$3235_storage_ptr_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (struct StdStorage storage pointer) returns (bytes memory)" + } + }, + "id": 4232, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23076:10:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + { + "components": [ + { + "id": 4234, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23089:6:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + }, + "typeName": { + "id": 4233, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23089:6:2", + "typeDescriptions": {} + } + } + ], + "id": 4235, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23088:8:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + }, + { + "typeIdentifier": "t_type$_t_int256_$", + "typeString": "type(int256)" + } + ], + "expression": { + "id": 4228, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": -1, + "src": "23065:3:2", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 4229, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "decode", + "nodeType": "MemberAccess", + "src": "23065:10:2", + "typeDescriptions": { + "typeIdentifier": "t_function_abidecode_pure$__$returns$__$", + "typeString": "function () pure" + } + }, + "id": 4236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23065:32:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "functionReturnParameters": 4227, + "id": 4237, + "nodeType": "Return", + "src": "23058:39:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "read_int", + "nameLocation": "22988:8:2", + "parameters": { + "id": 4224, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4223, + "mutability": "mutable", + "name": "self", + "nameLocation": "23016:4:2", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "22997:23:2", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + }, + "typeName": { + "id": 4222, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 4221, + "name": "StdStorage", + "nodeType": "IdentifierPath", + "referencedDeclaration": 3235, + "src": "22997:10:2" + }, + "referencedDeclaration": 3235, + "src": "22997:10:2", + "typeDescriptions": { + "typeIdentifier": "t_struct$_StdStorage_$3235_storage_ptr", + "typeString": "struct StdStorage" + } + }, + "visibility": "internal" + } + ], + "src": "22996:25:2" + }, + "returnParameters": { + "id": 4227, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4226, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4239, + "src": "23040:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4225, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "23040:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "23039:8:2" + }, + "scope": 4337, + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4295, + "nodeType": "FunctionDefinition", + "src": "23110:297:2", + "body": { + "id": 4294, + "nodeType": "Block", + "src": "23193:214:2", + "statements": [ + { + "assignments": [ + 4249 + ], + "declarations": [ + { + "constant": false, + "id": 4249, + "mutability": "mutable", + "name": "out", + "nameLocation": "23211:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23203:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4248, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23203:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4250, + "nodeType": "VariableDeclarationStatement", + "src": "23203:11:2" + }, + { + "assignments": [ + 4252 + ], + "declarations": [ + { + "constant": false, + "id": 4252, + "mutability": "mutable", + "name": "max", + "nameLocation": "23233:3:2", + "nodeType": "VariableDeclaration", + "scope": 4294, + "src": "23225:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4251, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23225:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4261, + "initialValue": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4256, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4253, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23239:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4254, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23239:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "hexValue": "3332", + "id": 4255, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23250:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23239:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "expression": { + "id": 4258, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23260:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4259, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23260:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4260, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "23239:29:2", + "trueExpression": { + "hexValue": "3332", + "id": 4257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23255:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23225:43:2" + }, + { + "body": { + "id": 4290, + "nodeType": "Block", + "src": "23309:72:2", + "statements": [ + { + "expression": { + "id": 4288, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 4272, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23323:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "Assignment", + "operator": "|=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 4287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + }, + "id": 4281, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 4275, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4241, + "src": "23338:1:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "id": 4279, + "indexExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4278, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4276, + "name": "offset", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4243, + "src": "23340:6:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 4277, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23349:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23340:10:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23338:13:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + }, + "nodeType": "BinaryOperation", + "operator": "&", + "rightExpression": { + "hexValue": "30784646", + "id": 4280, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23354:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_255_by_1", + "typeString": "int_const 255" + }, + "value": "0xFF" + }, + "src": "23338:20:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes1", + "typeString": "bytes1" + } + ], + "id": 4274, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "23330:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes32_$", + "typeString": "type(bytes32)" + }, + "typeName": { + "id": 4273, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23330:7:2", + "typeDescriptions": {} + } + }, + "id": 4282, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23330:29:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "BinaryOperation", + "operator": ">>", + "rightExpression": { + "components": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4285, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4283, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23364:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "38", + "id": 4284, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23368:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_8_by_1", + "typeString": "int_const 8" + }, + "value": "8" + }, + "src": "23364:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 4286, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "23363:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23330:40:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "23323:47:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4289, + "nodeType": "ExpressionStatement", + "src": "23323:47:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4266, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23295:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 4267, + "name": "max", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4252, + "src": "23299:3:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23295:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4291, + "initializationExpression": { + "assignments": [ + 4263 + ], + "declarations": [ + { + "constant": false, + "id": 4263, + "mutability": "mutable", + "name": "i", + "nameLocation": "23288:1:2", + "nodeType": "VariableDeclaration", + "scope": 4291, + "src": "23283:6:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4262, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23283:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4265, + "initialValue": { + "hexValue": "30", + "id": 4264, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23292:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23283:10:2" + }, + "loopExpression": { + "expression": { + "id": 4270, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23304:3:2", + "subExpression": { + "id": 4269, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4263, + "src": "23304:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4271, + "nodeType": "ExpressionStatement", + "src": "23304:3:2" + }, + "nodeType": "ForStatement", + "src": "23278:103:2" + }, + { + "expression": { + "id": 4292, + "name": "out", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4249, + "src": "23397:3:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "functionReturnParameters": 4247, + "id": 4293, + "nodeType": "Return", + "src": "23390:10:2" + } + ] + }, + "functionSelector": "53584939", + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "bytesToBytes32", + "nameLocation": "23119:14:2", + "parameters": { + "id": 4244, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4241, + "mutability": "mutable", + "name": "b", + "nameLocation": "23147:1:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23134:14:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4240, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23134:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4243, + "mutability": "mutable", + "name": "offset", + "nameLocation": "23155:6:2", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23150:11:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4242, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "23150:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "23133:29:2" + }, + "returnParameters": { + "id": 4247, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4246, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4295, + "src": "23184:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4245, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23184:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "src": "23183:9:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "public" + }, + { + "id": 4336, + "nodeType": "FunctionDefinition", + "src": "23413:397:2", + "body": { + "id": 4335, + "nodeType": "Block", + "src": "23490:320:2", + "statements": [ + { + "assignments": [ + 4304 + ], + "declarations": [ + { + "constant": false, + "id": 4304, + "mutability": "mutable", + "name": "result", + "nameLocation": "23513:6:2", + "nodeType": "VariableDeclaration", + "scope": 4335, + "src": "23500:19:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4303, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23500:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "id": 4312, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 4307, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23532:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4308, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23532:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3332", + "id": 4309, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23543:2:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_32_by_1", + "typeString": "int_const 32" + }, + "value": "32" + }, + "src": "23532:13:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "23522:9:2", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$", + "typeString": "function (uint256) pure returns (bytes memory)" + }, + "typeName": { + "id": 4305, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23526:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + } + }, + "id": 4311, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "23522:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23500:46:2" + }, + { + "body": { + "id": 4331, + "nodeType": "Block", + "src": "23595:185:2", + "statements": [ + { + "assignments": [ + 4325 + ], + "declarations": [ + { + "constant": false, + "id": 4325, + "mutability": "mutable", + "name": "k", + "nameLocation": "23617:1:2", + "nodeType": "VariableDeclaration", + "scope": 4331, + "src": "23609:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "typeName": { + "id": 4324, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23609:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "visibility": "internal" + } + ], + "id": 4329, + "initialValue": { + "baseExpression": { + "id": 4326, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23621:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4328, + "indexExpression": { + "id": 4327, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23623:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "23621:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "23609:16:2" + }, + { + "AST": { + "nodeType": "YulBlock", + "src": "23695:75:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "23724:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23736:2:2", + "type": "", + "value": "32" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23744:2:2", + "type": "", + "value": "32" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23748:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "23740:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23740:10:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23732:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23732:19:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23720:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "23720:32:2" + }, + { + "name": "k", + "nodeType": "YulIdentifier", + "src": "23754:1:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "23713:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "23713:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "23713:43:2" + } + ] + }, + "documentation": "@solidity memory-safe-assembly", + "evmVersion": "london", + "externalReferences": [ + { + "declaration": 4314, + "isOffset": false, + "isSlot": false, + "src": "23748:1:2", + "valueSize": 1 + }, + { + "declaration": 4325, + "isOffset": false, + "isSlot": false, + "src": "23754:1:2", + "valueSize": 1 + }, + { + "declaration": 4304, + "isOffset": false, + "isSlot": false, + "src": "23724:6:2", + "valueSize": 1 + } + ], + "id": 4330, + "nodeType": "InlineAssembly", + "src": "23686:84:2" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4317, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23576:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 4318, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4298, + "src": "23580:1:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[] memory" + } + }, + "id": 4319, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "src": "23580:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "23576:12:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4332, + "initializationExpression": { + "assignments": [ + 4314 + ], + "declarations": [ + { + "constant": false, + "id": 4314, + "mutability": "mutable", + "name": "i", + "nameLocation": "23569:1:2", + "nodeType": "VariableDeclaration", + "scope": 4332, + "src": "23561:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4313, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "23561:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4316, + "initialValue": { + "hexValue": "30", + "id": 4315, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "23573:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "23561:13:2" + }, + "loopExpression": { + "expression": { + "id": 4322, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "23590:3:2", + "subExpression": { + "id": 4321, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4314, + "src": "23590:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4323, + "nodeType": "ExpressionStatement", + "src": "23590:3:2" + }, + "nodeType": "ForStatement", + "src": "23556:224:2" + }, + { + "expression": { + "id": 4333, + "name": "result", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4304, + "src": "23797:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + }, + "functionReturnParameters": 4302, + "id": 4334, + "nodeType": "Return", + "src": "23790:13:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "flatten", + "nameLocation": "23422:7:2", + "parameters": { + "id": 4299, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4298, + "mutability": "mutable", + "name": "b", + "nameLocation": "23447:1:2", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23430:18:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_memory_ptr", + "typeString": "bytes32[]" + }, + "typeName": { + "baseType": { + "id": 4296, + "name": "bytes32", + "nodeType": "ElementaryTypeName", + "src": "23430:7:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "id": 4297, + "nodeType": "ArrayTypeName", + "src": "23430:9:2", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_bytes32_$dyn_storage_ptr", + "typeString": "bytes32[]" + } + }, + "visibility": "internal" + } + ], + "src": "23429:20:2" + }, + "returnParameters": { + "id": 4302, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4301, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4336, + "src": "23472:12:2", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes" + }, + "typeName": { + "id": 4300, + "name": "bytes", + "nodeType": "ElementaryTypeName", + "src": "23472:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes" + } + }, + "visibility": "internal" + } + ], + "src": "23471:14:2" + }, + "scope": 4337, + "stateMutability": "pure", + "virtual": false, + "visibility": "private" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdStorage", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4337 + ], + "name": "stdStorage", + "nameLocation": "14948:10:2", + "scope": 4485, + "usedErrors": [] + }, + { + "id": 4484, + "nodeType": "ContractDefinition", + "src": "24010:1245:2", + "nodes": [ + { + "id": 4341, + "nodeType": "VariableDeclaration", + "src": "24032:115:2", + "constant": true, + "mutability": "constant", + "name": "INT256_MIN", + "nameLocation": "24056:10:2", + "scope": 4484, + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4338, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24032:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "value": { + "id": 4340, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24069:78:2", + "subExpression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4339, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24070:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "typeDescriptions": { + "typeIdentifier": "t_rational_minus_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const -578...(70 digits omitted)...9968" + } + }, + "visibility": "private" + }, + { + "id": 4366, + "nodeType": "FunctionDefinition", + "src": "24154:295:2", + "body": { + "id": 4365, + "nodeType": "Block", + "src": "24209:240:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4350, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4348, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24287:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "id": 4349, + "name": "INT256_MIN", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4341, + "src": "24292:10:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "src": "24287:15:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4353, + "nodeType": "IfStatement", + "src": "24283:117:2", + "trueBody": { + "expression": { + "hexValue": "3537383936303434363138363538303937373131373835343932353034333433393533393236363334393932333332383230323832303139373238373932303033393536353634383139393638", + "id": 4351, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24323:77:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_57896044618658097711785492504343953926634992332820282019728792003956564819968_by_1", + "typeString": "int_const 5789...(69 digits omitted)...9968" + }, + "value": "57896044618658097711785492504343953926634992332820282019728792003956564819968" + }, + "functionReturnParameters": 4347, + "id": 4352, + "nodeType": "Return", + "src": "24316:84:2" + } + }, + { + "expression": { + "arguments": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4358, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4356, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24426:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4357, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24431:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24426:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "id": 4361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "-", + "prefix": true, + "src": "24439:2:2", + "subExpression": { + "id": 4360, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24440:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "id": 4362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24426:15:2", + "trueExpression": { + "id": 4359, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4343, + "src": "24435:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4355, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "24418:7:2", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_uint256_$", + "typeString": "type(uint256)" + }, + "typeName": { + "id": 4354, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24418:7:2", + "typeDescriptions": {} + } + }, + "id": 4363, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24418:24:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4347, + "id": 4364, + "nodeType": "Return", + "src": "24411:31:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "abs", + "nameLocation": "24163:3:2", + "parameters": { + "id": 4344, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4343, + "mutability": "mutable", + "name": "a", + "nameLocation": "24174:1:2", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24167:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4342, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24167:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24166:10:2" + }, + "returnParameters": { + "id": 4347, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4346, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4366, + "src": "24200:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4345, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24200:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24199:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4387, + "nodeType": "FunctionDefinition", + "src": "24455:138:2", + "body": { + "id": 4386, + "nodeType": "Block", + "src": "24524:69:2", + "statements": [ + { + "expression": { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4375, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24541:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "id": 4376, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24545:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24541:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4381, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24581:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4382, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24585:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24581:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 4384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "Conditional", + "src": "24541:45:2", + "trueExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4380, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4378, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4368, + "src": "24561:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 4379, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4370, + "src": "24565:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24561:5:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4374, + "id": 4385, + "nodeType": "Return", + "src": "24534:52:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24464:5:2", + "parameters": { + "id": 4371, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4368, + "mutability": "mutable", + "name": "a", + "nameLocation": "24478:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24470:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4367, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24470:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4370, + "mutability": "mutable", + "name": "b", + "nameLocation": "24489:1:2", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24481:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4369, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24481:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24469:22:2" + }, + "returnParameters": { + "id": 4374, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4373, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4387, + "src": "24515:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4372, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24515:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24514:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4431, + "nodeType": "FunctionDefinition", + "src": "24599:290:2", + "body": { + "id": 4430, + "nodeType": "Block", + "src": "24666:223:2", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4398, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4396, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24720:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4397, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24725:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24720:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4399, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24730:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "hexValue": "30", + "id": 4400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24735:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24730:6:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:16:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "||", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 4409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4405, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4403, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24740:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24744:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24740:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "id": 4408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4406, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24749:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "hexValue": "30", + "id": 4407, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "24753:1:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "24749:5:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24740:14:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "24720:34:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 4421, + "nodeType": "IfStatement", + "src": "24716:93:2", + "trueBody": { + "id": 4420, + "nodeType": "Block", + "src": "24756:53:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "id": 4413, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24787:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4412, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24783:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4414, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24783:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "arguments": [ + { + "id": 4416, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24795:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4415, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24791:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24791:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4411, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "24777:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4418, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24777:21:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4419, + "nodeType": "Return", + "src": "24770:28:2" + } + ] + } + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 4423, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4389, + "src": "24871:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4422, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24867:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4424, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24867:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "arguments": [ + { + "id": 4426, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4391, + "src": "24880:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4425, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "24876:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4427, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "24876:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "24867:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4395, + "id": 4429, + "nodeType": "Return", + "src": "24860:22:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "delta", + "nameLocation": "24608:5:2", + "parameters": { + "id": 4392, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4389, + "mutability": "mutable", + "name": "a", + "nameLocation": "24621:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24614:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4388, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24614:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4391, + "mutability": "mutable", + "name": "b", + "nameLocation": "24631:1:2", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24624:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4390, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "24624:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "24613:20:2" + }, + "returnParameters": { + "id": 4395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4394, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4431, + "src": "24657:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24657:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24656:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4454, + "nodeType": "FunctionDefinition", + "src": "24895:160:2", + "body": { + "id": 4453, + "nodeType": "Block", + "src": "24971:84:2", + "statements": [ + { + "assignments": [ + 4441 + ], + "declarations": [ + { + "constant": false, + "id": 4441, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "24989:8:2", + "nodeType": "VariableDeclaration", + "scope": 4453, + "src": "24981:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4440, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24981:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4446, + "initialValue": { + "arguments": [ + { + "id": 4443, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4433, + "src": "25006:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "id": 4444, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25009:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4442, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4387, + "src": "25000:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 4445, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25000:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "24981:30:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4451, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4449, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4447, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4441, + "src": "25029:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4448, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25040:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25029:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4450, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4435, + "src": "25047:1:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25029:19:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4439, + "id": 4452, + "nodeType": "Return", + "src": "25022:26:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "24904:12:2", + "parameters": { + "id": 4436, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4433, + "mutability": "mutable", + "name": "a", + "nameLocation": "24925:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24917:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4432, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24917:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4435, + "mutability": "mutable", + "name": "b", + "nameLocation": "24936:1:2", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24928:9:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4434, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24928:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24916:22:2" + }, + "returnParameters": { + "id": 4439, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4438, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4454, + "src": "24962:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4437, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "24962:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "24961:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + }, + { + "id": 4483, + "nodeType": "FunctionDefinition", + "src": "25061:192:2", + "body": { + "id": 4482, + "nodeType": "Block", + "src": "25135:118:2", + "statements": [ + { + "assignments": [ + 4464 + ], + "declarations": [ + { + "constant": false, + "id": 4464, + "mutability": "mutable", + "name": "absDelta", + "nameLocation": "25153:8:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25145:16:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4463, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25145:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4469, + "initialValue": { + "arguments": [ + { + "id": 4466, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4456, + "src": "25170:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + { + "id": 4467, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25173:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4465, + "name": "delta", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4387, + 4431 + ], + "referencedDeclaration": 4431, + "src": "25164:5:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256,int256) pure returns (uint256)" + } + }, + "id": 4468, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25164:11:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25145:30:2" + }, + { + "assignments": [ + 4471 + ], + "declarations": [ + { + "constant": false, + "id": 4471, + "mutability": "mutable", + "name": "absB", + "nameLocation": "25193:4:2", + "nodeType": "VariableDeclaration", + "scope": 4482, + "src": "25185:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4470, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25185:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 4475, + "initialValue": { + "arguments": [ + { + "id": 4473, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4458, + "src": "25204:1:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + ], + "id": 4472, + "name": "abs", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4366, + "src": "25200:3:2", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_int256_$returns$_t_uint256_$", + "typeString": "function (int256) pure returns (uint256)" + } + }, + "id": 4474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "25200:6:2", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "25185:21:2" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4480, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 4478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 4476, + "name": "absDelta", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4464, + "src": "25224:8:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "31653138", + "id": 4477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "25235:4:2", + "typeDescriptions": { + "typeIdentifier": "t_rational_1000000000000000000_by_1", + "typeString": "int_const 1000000000000000000" + }, + "value": "1e18" + }, + "src": "25224:15:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "/", + "rightExpression": { + "id": 4479, + "name": "absB", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4471, + "src": "25242:4:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "25224:22:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 4462, + "id": 4481, + "nodeType": "Return", + "src": "25217:29:2" + } + ] + }, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "percentDelta", + "nameLocation": "25070:12:2", + "parameters": { + "id": 4459, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4456, + "mutability": "mutable", + "name": "a", + "nameLocation": "25090:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25083:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4455, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25083:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 4458, + "mutability": "mutable", + "name": "b", + "nameLocation": "25100:1:2", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25093:8:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + }, + "typeName": { + "id": 4457, + "name": "int256", + "nodeType": "ElementaryTypeName", + "src": "25093:6:2", + "typeDescriptions": { + "typeIdentifier": "t_int256", + "typeString": "int256" + } + }, + "visibility": "internal" + } + ], + "src": "25082:20:2" + }, + "returnParameters": { + "id": 4462, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 4461, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 4483, + "src": "25126:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 4460, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "25126:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "25125:9:2" + }, + "scope": 4484, + "stateMutability": "pure", + "virtual": false, + "visibility": "internal" + } + ], + "abstract": false, + "baseContracts": [], + "canonicalName": "stdMath", + "contractDependencies": [], + "contractKind": "library", + "fullyImplemented": true, + "linearizedBaseContracts": [ + 4484 + ], + "name": "stdMath", + "nameLocation": "24018:7:2", + "scope": 4485, + "usedErrors": [] + } + ], + "license": "Unlicense" + }, + "id": 2 +} \ No newline at end of file diff --git a/getting-started/foundry/remappings.txt b/getting-started/foundry/remappings.txt new file mode 100644 index 00000000..785f334a --- /dev/null +++ b/getting-started/foundry/remappings.txt @@ -0,0 +1 @@ +@eth-optimism/=lib/node_modules/@eth-optimism/ diff --git a/getting-started/foundry/script/Contract.s.sol b/getting-started/foundry/script/Contract.s.sol new file mode 100644 index 00000000..f5cb3933 --- /dev/null +++ b/getting-started/foundry/script/Contract.s.sol @@ -0,0 +1,12 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +import "forge-std/Script.sol"; + +contract ContractScript is Script { + function setUp() public {} + + function run() public { + vm.broadcast(); + } +} diff --git a/getting-started/foundry/src/Fail.sol b/getting-started/foundry/src/Fail.sol new file mode 100644 index 00000000..7e60b39f --- /dev/null +++ b/getting-started/foundry/src/Fail.sol @@ -0,0 +1,12 @@ +//SPDX-License-Identifier: Unlicense +pragma solidity ^0.8.0; + + +import "forge-std/console.sol"; + +contract Fail { + + function revert() public { + require(false, "false is false! Amazin!"); + } +} // contract Greeter diff --git a/getting-started/foundry/src/Greeter.sol b/getting-started/foundry/src/Greeter.sol new file mode 100644 index 00000000..d007cb0f --- /dev/null +++ b/getting-started/foundry/src/Greeter.sol @@ -0,0 +1,63 @@ +//SPDX-License-Identifier: Unlicense +pragma solidity ^0.8.0; + + +import "forge-std/console.sol"; + + +// For cross domain messages' origin +import { ICrossDomainMessenger } from + "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; + +contract Greeter { + string greeting; + + event SetGreeting( + address sender, // msg.sender + address origin, // tx.origin + address xorigin); // cross domain origin, if any + + constructor(string memory _greeting) { + greeting = _greeting; + } + + function greet() public view returns (string memory) { + return greeting; + } + + function setGreeting(string memory _greeting) public { + greeting = _greeting; + emit SetGreeting(msg.sender, tx.origin, getXorig()); + } + + + // Get the cross domain origin, if any + function getXorig() private view returns (address) { + // Get the cross domain messenger's address each time. + // This is less resource intensive than writing to storage. + address cdmAddr = address(0); + + // Mainnet + if (block.chainid == 1) + cdmAddr = 0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1; + + // Kovan + if (block.chainid == 42) + cdmAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; + + // Goerli + if (block.chainid == 5) + cdmAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; + + // L2 (same address on every network) + if (block.chainid == 10 || block.chainid == 69 || block.chainid == 420) + cdmAddr = 0x4200000000000000000000000000000000000007; + + // If this isn't a cross domain message + if (msg.sender != cdmAddr) + return address(0); + + // If it is a cross domain message, find out where it is from + return ICrossDomainMessenger(cdmAddr).xDomainMessageSender(); + } // getXorig() +} // contract Greeter diff --git a/getting-started/foundry/test/Greeter.t.sol b/getting-started/foundry/test/Greeter.t.sol new file mode 100644 index 00000000..277bd499 --- /dev/null +++ b/getting-started/foundry/test/Greeter.t.sol @@ -0,0 +1,40 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +import "forge-std/Test.sol"; +import "src/Greeter.sol"; +import "forge-std/console.sol"; + +contract GreeterTest is Test { + Greeter greeter; + + event SetGreeting( + address sender, // msg.sender + address origin, // tx.origin + address xorigin); // cross domain origin, if any + + function setUp() public { + greeter = new Greeter("hello"); + } // setUp + + function testGreeting() public { + string memory greeting; + + greeting = greeter.greet(); + assertEq(greeting, "hello"); + } // testGreeting + + function testSetGreeting() public { + string memory greeting; + + vm.expectEmit(true, true, true, false); + emit SetGreeting( + address(0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84), + address(0x00a329c0648769A73afAc7F9381E08FB43dBEA72), + address(0) + ); + greeter.setGreeting("New Greeting"); + greeting = greeter.greet(); + assertEq(greeting, "New Greeting"); + } // testSetGreeting +} // contract GreeterTest diff --git a/getting-started/hardhat/.env.example b/getting-started/hardhat/.env.example index 35981dd4..9bc60048 100644 --- a/getting-started/hardhat/.env.example +++ b/getting-started/hardhat/.env.example @@ -1,2 +1,5 @@ # Put the mnemonic for an account on Optimism here MNEMONIC="test test test test test test test test test test test junk" + +# URL to access Optimism Goerli +OPTI_GOERLI_URL=https://goerli.optimism.io diff --git a/getting-started/hardhat/contracts/Greeter.sol b/getting-started/hardhat/contracts/Greeter.sol index 4af97589..253c38f1 100644 --- a/getting-started/hardhat/contracts/Greeter.sol +++ b/getting-started/hardhat/contracts/Greeter.sol @@ -1,14 +1,14 @@ //SPDX-License-Identifier: Unlicense pragma solidity ^0.8.0; -import "hardhat/console.sol"; +// import "hardhat/console.sol"; contract Greeter { string greeting; constructor(string memory _greeting) { - console.log("Deploying a Greeter with greeting:", _greeting); +// console.log("Deploying a Greeter with greeting:", _greeting); greeting = _greeting; } @@ -17,7 +17,7 @@ contract Greeter { } function setGreeting(string memory _greeting) public { - console.log("Changing greeting from '%s' to '%s'", greeting, _greeting); +// console.log("Changing greeting from '%s' to '%s'", greeting, _greeting); greeting = _greeting; } -} +} \ No newline at end of file diff --git a/getting-started/hardhat/hardhat.config.js b/getting-started/hardhat/hardhat.config.js index 9206d9c6..87350c3a 100644 --- a/getting-started/hardhat/hardhat.config.js +++ b/getting-started/hardhat/hardhat.config.js @@ -18,19 +18,14 @@ task("accounts", "Prints the list of accounts", async (taskArgs, hre) => { * @type import('hardhat/config').HardhatUserConfig */ module.exports = { - solidity: "0.8.4", + solidity: "0.8.13", networks: { "local-devnode": { url: "http://localhost:8545", accounts: { mnemonic: "test test test test test test test test test test test junk" } }, - "optimistic-kovan": { - url: "https://kovan.optimism.io", - accounts: { mnemonic: process.env.MNEMONIC } -// accounts: { mnemonic: "test test test test test test test test test test test junk" } - }, - "optimism": { - url: "https://mainnet.optimism.io", + "optimism-goerli": { + url: process.env.OPTI_GOERLI_URL, accounts: { mnemonic: process.env.MNEMONIC } } } diff --git a/getting-started/truffle/.env.example b/getting-started/truffle/.env.example index 35981dd4..9bc60048 100644 --- a/getting-started/truffle/.env.example +++ b/getting-started/truffle/.env.example @@ -1,2 +1,5 @@ # Put the mnemonic for an account on Optimism here MNEMONIC="test test test test test test test test test test test junk" + +# URL to access Optimism Goerli +OPTI_GOERLI_URL=https://goerli.optimism.io diff --git a/getting-started/truffle/package.json b/getting-started/truffle/package.json index d0e781db..8468e38f 100644 --- a/getting-started/truffle/package.json +++ b/getting-started/truffle/package.json @@ -4,7 +4,7 @@ "main": "index.js", "license": "MIT", "dependencies": { - "@truffle/hdwallet-provider": "^2.0.3", + "@truffle/hdwallet-provider": "^2.0.10", "chai": "^4.3.6", "dotenv": "^16.0.0", "truffle": "^5.4.32" diff --git a/getting-started/truffle/truffle-config.js b/getting-started/truffle/truffle-config.js index e3564156..2742ca16 100644 --- a/getting-started/truffle/truffle-config.js +++ b/getting-started/truffle/truffle-config.js @@ -21,9 +21,6 @@ const HDWalletProvider = require('@truffle/hdwallet-provider'); require('dotenv').config() -// The mnemonic for local-devnode and optimistic-kovan -const mnemonic = "test test test test test test test test test test test junk" - module.exports = { /** @@ -73,18 +70,12 @@ module.exports = { networkCheckTimeout: 1000000000, timeoutBlocks: 300 }, - "optimistic-kovan": { - provider: () => new HDWalletProvider(mnemonic, `https://kovan.optimism.io`), - network_id: 69, - networkCheckTimeout: 1000000000, - timeoutBlocks: 300 - }, - "optimism": { - provider: () => new HDWalletProvider(process.env.MNEMONIC, `https://mainnet.optimism.io`), - network_id: 10, - networkCheckTimeout: 1000000000, - timeoutBlocks: 300 - }, + "optimism-goerli": { + provider: () => new HDWalletProvider( + process.env.MNEMONIC, + process.env.OPTI_GOERLI_URL), + network_id: 420 + } // Useful for private networks // private: { // provider: () => new HDWalletProvider(mnemonic, `https://network.io`), diff --git a/getting-started/truffle/yarn.lock b/getting-started/truffle/yarn.lock index d5c45251..1f2c22b2 100644 --- a/getting-started/truffle/yarn.lock +++ b/getting-started/truffle/yarn.lock @@ -529,6 +529,17 @@ resolved "https://registry.yarnpkg.com/@ledgerhq/logs/-/logs-5.50.0.tgz#29c6419e8379d496ab6d0426eadf3c4d100cd186" integrity sha512-swKHYCOZUGyVt4ge0u8a7AwNcA//h4nx5wIi0sruGye1IJ5Cva0GyK9L2/WdX+kWVTKp92ZiEo1df31lrWGPgA== +"@metamask/eth-sig-util@4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz#3ad61f6ea9ad73ba5b19db780d40d9aae5157088" + integrity sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ== + dependencies: + ethereumjs-abi "^0.6.8" + ethereumjs-util "^6.2.1" + ethjs-util "^0.1.6" + tweetnacl "^1.0.3" + tweetnacl-util "^0.15.1" + "@metamask/safe-event-emitter@^2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz#af577b477c683fad17c619a78208cede06f9605c" @@ -539,6 +550,16 @@ resolved "https://registry.yarnpkg.com/@multiformats/base-x/-/base-x-4.0.1.tgz#95ff0fa58711789d53aefb2590a8b7a4e715d121" integrity sha512-eMk0b9ReBbV23xXU693TAIrLyeO5iTgBZGSJfpqriG8UkYvr/hC9u9pyMlAakDNHWmbhMZCDs6KQO0jzKD8OTw== +"@noble/hashes@1.0.0", "@noble/hashes@~1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.0.0.tgz#d5e38bfbdaba174805a4e649f13be9a9ed3351ae" + integrity sha512-DZVbtY62kc3kkBtMHqwCOfXrT/hnoORy5BJ4+HU1IR59X0KWAOqsfzQPcUl/lQLlG7qXbe/fZ3r/emxtAl+sqg== + +"@noble/secp256k1@1.5.5", "@noble/secp256k1@~1.5.2": + version "1.5.5" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.5.5.tgz#315ab5745509d1a8c8e90d0bdf59823ccf9bcfc3" + integrity sha512-sZ1W6gQzYnu45wPrWx8D3kwI2/U29VYTx9OjbDAd7jwRItJ0cSTMPRL/C8AWZFn9kWFLQGqEXVEE86w4Z8LpIQ== + "@nodefactory/filsnap-adapter@^0.2.1": version "0.2.2" resolved "https://registry.yarnpkg.com/@nodefactory/filsnap-adapter/-/filsnap-adapter-0.2.2.tgz#0e182150ce3825b6c26b8512ab9355ab7759b498" @@ -651,6 +672,28 @@ resolved "https://registry.yarnpkg.com/@repeaterjs/repeater/-/repeater-3.0.4.tgz#a04d63f4d1bf5540a41b01a921c9a7fddc3bd1ca" integrity sha512-AW8PKd6iX3vAZ0vA43nOUOnbq/X5ihgU+mSXXqunMkeQADGiqw/PY0JNeYtD5sr0PAy51YPgAPbDoeapv9r8WA== +"@scure/base@~1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.0.0.tgz#109fb595021de285f05a7db6806f2f48296fcee7" + integrity sha512-gIVaYhUsy+9s58m/ETjSJVKHhKTBMmcRb9cEV5/5dwvfDlfORjKrFsDeDHWRrm6RjcPvCLZFwGJjAjLj1gg4HA== + +"@scure/bip32@1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.0.1.tgz#1409bdf9f07f0aec99006bb0d5827693418d3aa5" + integrity sha512-AU88KKTpQ+YpTLoicZ/qhFhRRIo96/tlb+8YmDDHR9yiKVjSsFZiefJO4wjS2PMTkz5/oIcw84uAq/8pleQURA== + dependencies: + "@noble/hashes" "~1.0.0" + "@noble/secp256k1" "~1.5.2" + "@scure/base" "~1.0.0" + +"@scure/bip39@1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.0.0.tgz#47504e58de9a56a4bbed95159d2d6829fa491bb0" + integrity sha512-HrtcikLbd58PWOkl02k9V6nXWQyoa7A0+Ek9VF7z17DDk9XZAFUcIdqfh0jJXLypmizc5/8P6OxoUeKliiWv4w== + dependencies: + "@noble/hashes" "~1.0.0" + "@scure/base" "~1.0.0" + "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" @@ -1014,15 +1057,15 @@ ora "^3.4.0" web3-utils "1.5.3" -"@truffle/hdwallet-provider@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@truffle/hdwallet-provider/-/hdwallet-provider-2.0.3.tgz#4096abaa90c803d6274d87fb1078082364371a3d" - integrity sha512-jT7X9P8hmXDaoem6GPzYhZ1p6PnW2l7sPMtVe7JCDXZTlv8hMy/ZfcyEppEoNqpad8vjWWpvGuETvyPpBEbLOw== +"@truffle/hdwallet-provider@^2.0.10": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@truffle/hdwallet-provider/-/hdwallet-provider-2.0.10.tgz#2b02baa580bc284c0f3691c7a400de0fff0dce52" + integrity sha512-0wOdWYciTEKy3doZCzkhcKbYN4QnwtLx/ihRelIsZZyklNe++fppOqjKKa4t+8t2g5r0Ji3i5xPFOc2CAdS+fQ== dependencies: "@ethereumjs/common" "^2.4.0" "@ethereumjs/tx" "^3.3.0" - eth-sig-util "^3.0.1" - ethereum-cryptography "^0.1.3" + "@metamask/eth-sig-util" "4.0.1" + ethereum-cryptography "1.0.3" ethereum-protocol "^1.0.1" ethereumjs-util "^6.1.0" ethereumjs-wallet "^1.0.1" @@ -3654,16 +3697,6 @@ eth-sig-util@^1.4.2: ethereumjs-abi "git+https://github.com/ethereumjs/ethereumjs-abi.git" ethereumjs-util "^5.1.1" -eth-sig-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-3.0.1.tgz#8753297c83a3f58346bd13547b59c4b2cd110c96" - integrity sha512-0Us50HiGGvZgjtWTyAI/+qTzYPMLy5Q451D0Xy68bxq1QMWdoOddDwGvsqcFT27uohKgalM9z/yxplyt+mY2iQ== - dependencies: - ethereumjs-abi "^0.6.8" - ethereumjs-util "^5.1.1" - tweetnacl "^1.0.3" - tweetnacl-util "^0.15.0" - ethereum-bloom-filters@^1.0.6: version "1.0.10" resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz#3ca07f4aed698e75bd134584850260246a5fed8a" @@ -3681,6 +3714,16 @@ ethereum-common@^0.0.18: resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f" integrity sha1-L9w1dvIykDNYl26znaeDIT/5Uj8= +ethereum-cryptography@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-1.0.3.tgz#b1f8f4e702434b2016248dbb2f9fdd60c54772d8" + integrity sha512-NQLTW0x0CosoVb/n79x/TRHtfvS3hgNUPTUSCu0vM+9k6IIhHFFrAOJReneexjZsoZxMjJHnJn4lrE8EbnSyqQ== + dependencies: + "@noble/hashes" "1.0.0" + "@noble/secp256k1" "1.5.5" + "@scure/bip32" "1.0.1" + "@scure/bip39" "1.0.0" + ethereum-cryptography@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191" @@ -3707,15 +3750,7 @@ ethereum-protocol@^1.0.1: resolved "https://registry.yarnpkg.com/ethereum-protocol/-/ethereum-protocol-1.0.1.tgz#b7d68142f4105e0ae7b5e178cf42f8d4dc4b93cf" integrity sha512-3KLX1mHuEsBW0dKG+c6EOJS1NBNqdCICvZW9sInmZTt5aY0oxmHVggYRE0lJu1tcnMD1K+AKHdLi6U43Awm1Vg== -ethereumjs-abi@^0.6.8: - version "0.6.8" - resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.8.tgz#71bc152db099f70e62f108b7cdfca1b362c6fcae" - integrity sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA== - dependencies: - bn.js "^4.11.8" - ethereumjs-util "^6.0.0" - -"ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git": +ethereumjs-abi@^0.6.8, "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git": version "0.6.8" resolved "git+https://github.com/ethereumjs/ethereumjs-abi.git#ee3994657fa7a427238e6ba92a84d0b529bbcde0" dependencies: @@ -3787,7 +3822,7 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.1.1, ethereumjs-util@^5.1.2, ethereum rlp "^2.0.0" safe-buffer "^5.1.1" -ethereumjs-util@^6.0.0, ethereumjs-util@^6.1.0: +ethereumjs-util@^6.0.0, ethereumjs-util@^6.1.0, ethereumjs-util@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz#fcb4e4dd5ceacb9d2305426ab1a5cd93e3163b69" integrity sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw== @@ -3865,7 +3900,7 @@ ethjs-unit@0.1.6: bn.js "4.11.6" number-to-bn "1.7.0" -ethjs-util@0.1.6, ethjs-util@^0.1.3: +ethjs-util@0.1.6, ethjs-util@^0.1.3, ethjs-util@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536" integrity sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== @@ -8330,7 +8365,7 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" -tweetnacl-util@^0.15.0, tweetnacl-util@^0.15.1: +tweetnacl-util@^0.15.1: version "0.15.1" resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz#b80fcdb5c97bcc508be18c44a4be50f022eea00b" integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw== From 2d1cafb02ce02cb396f65e9f66c66c81b3aaf878 Mon Sep 17 00:00:00 2001 From: Ori Pomerantz Date: Thu, 21 Jul 2022 21:46:10 -0500 Subject: [PATCH 2/4] feat(xdom-comm): Add Foundry and move to Goerli --- .gitmodules | 3 + cross-dom-comm/.env.example | 2 - cross-dom-comm/.gitignore | 8 + cross-dom-comm/README.md | 327 ++++++- cross-dom-comm/foundry/foundry.toml | 6 + cross-dom-comm/foundry/lib/forge-std | 1 + cross-dom-comm/foundry/lib/package.json | 5 + cross-dom-comm/foundry/lib/yarn.lock | 908 ++++++++++++++++++ cross-dom-comm/foundry/remappings.txt | 2 + cross-dom-comm/foundry/script/Contract.s.sol | 12 + cross-dom-comm/foundry/src/Contract.sol | 4 + .../src/FromL1_ControlL2Greeter.sol} | 10 +- .../src/FromL2_ControlL1Greeter.sol} | 9 +- .../{contracts => foundry/src}/Greeter.sol | 9 +- cross-dom-comm/foundry/test/Contract.t.sol | 12 + cross-dom-comm/hardhat/.env.example | 3 + .../contracts/FromL1_ControlL2Greeter.sol | 28 + .../contracts/FromL2_ControlL1Greeter.sol | 29 + cross-dom-comm/hardhat/contracts/Greeter.sol | 59 ++ .../{ => hardhat}/hardhat.config.js | 8 +- cross-dom-comm/{ => hardhat}/package.json | 2 +- .../{ => hardhat}/test/sample-test.js | 1 + cross-dom-comm/{ => hardhat}/yarn.lock | 427 +++++++- 23 files changed, 1787 insertions(+), 88 deletions(-) delete mode 100644 cross-dom-comm/.env.example create mode 100644 cross-dom-comm/foundry/foundry.toml create mode 160000 cross-dom-comm/foundry/lib/forge-std create mode 100644 cross-dom-comm/foundry/lib/package.json create mode 100644 cross-dom-comm/foundry/lib/yarn.lock create mode 100644 cross-dom-comm/foundry/remappings.txt create mode 100644 cross-dom-comm/foundry/script/Contract.s.sol create mode 100644 cross-dom-comm/foundry/src/Contract.sol rename cross-dom-comm/{contracts/ControlL2Greeter.sol => foundry/src/FromL1_ControlL2Greeter.sol} (60%) rename cross-dom-comm/{contracts/ControlL1Greeter.sol => foundry/src/FromL2_ControlL1Greeter.sol} (65%) rename cross-dom-comm/{contracts => foundry/src}/Greeter.sol (86%) create mode 100644 cross-dom-comm/foundry/test/Contract.t.sol create mode 100644 cross-dom-comm/hardhat/.env.example create mode 100644 cross-dom-comm/hardhat/contracts/FromL1_ControlL2Greeter.sol create mode 100644 cross-dom-comm/hardhat/contracts/FromL2_ControlL1Greeter.sol create mode 100644 cross-dom-comm/hardhat/contracts/Greeter.sol rename cross-dom-comm/{ => hardhat}/hardhat.config.js (85%) rename cross-dom-comm/{ => hardhat}/package.json (90%) rename cross-dom-comm/{ => hardhat}/test/sample-test.js (90%) rename cross-dom-comm/{ => hardhat}/yarn.lock (94%) diff --git a/.gitmodules b/.gitmodules index e69de29b..cf691e20 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "cross-dom-comm/f2/lib/forge-std"] + path = cross-dom-comm/foundry/lib/forge-std + url = https://github.com/foundry-rs/forge-std diff --git a/cross-dom-comm/.env.example b/cross-dom-comm/.env.example deleted file mode 100644 index a181b7e8..00000000 --- a/cross-dom-comm/.env.example +++ /dev/null @@ -1,2 +0,0 @@ -MNEMONIC=test test test test test test test test test test test junk -KOVAN_URL=https://eth-kovan.alchemyapi.io/v2/ diff --git a/cross-dom-comm/.gitignore b/cross-dom-comm/.gitignore index 784148b7..e3a830a4 100644 --- a/cross-dom-comm/.gitignore +++ b/cross-dom-comm/.gitignore @@ -3,3 +3,11 @@ node_modules #Hardhat files cache artifacts + + +# Foundry files +out + +#We don't want the mnemonic file +mnem.delme + diff --git a/cross-dom-comm/README.md b/cross-dom-comm/README.md index 027dcab0..55b58784 100644 --- a/cross-dom-comm/README.md +++ b/cross-dom-comm/README.md @@ -10,31 +10,37 @@ You will learn how run a contract on Ethereum that runs another contract on Opti ## Seeing it in action -To show how this works we installed [a slightly modified version of HardHat's `Greeter.sol`](contracts/Greeter.sol) on both L1 Kovan and Optimistic Kovan +To show how this works we installed [a slightly modified version of HardHat's `Greeter.sol`](hardhat/contracts/Greeter.sol) on both L1 Goerli and Optimistic Goerli | Network | Greeter address | | ------- | ---------------- | -| Kovan (L1) | [0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0) | -| Optimistic Kovan (L2) | [0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9](https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9) | +| Goerli (L1) | [0x7fA4D972bB15B71358da2D937E4A830A9084cf2e](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e) | +| Optimistic Goerli (L2) | [0xC0836cCc8FBa87637e782Dde6e6572aD624fb984](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984) | ::: Tip What if somebody else uses the same contracts at the same time? If somebody else uses these contracts while you are going through the tutorial, they might update the greeting after you. In that case you'll see the wrong greeting when you call the `Greeter` contract. -However, you can still verify your controller works in one of two ways: -1. Find the transaction on either [Kovan Etherscan](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0#internaltx) or [Optimistic Kovan Etherscan]https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9#internaltx). - In either case, it will be an internal transaction because the contract called directly is the cross domain messenger. -1. Just try again. +However, you can still verify your controller works in one of these ways: + +- Find the transaction on either [Goerli Etherscan](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e#internaltx) or [Optimistic Goerli BlockScount](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984/internal-transactions#address-tabs). + In either case, it will be an internal transaction because the contract called directly is the cross domain messenger. +- Just try again. ::: -### Setup +### Hardhat + +This is how you can see communication between domains work in hardhat. + +#### Setup This setup assumes you already have [Node.js](https://nodejs.org/en/) and [yarn](https://classic.yarnpkg.com/) installed on your system. 1. Copy `.env.example` to `.env` and edit it: - 1. Set `MNEMONIC` to point to an account that has ETH on the Kovan test network. - 1. Set `KOVAN_URL` to point to a URL that accesses the Kovan test network. + 1. Set `MNEMONIC` to point to an account that has ETH on the Goerli test network as well as the Optimistic Goerli test network. + 1. Set `GOERLI_URL` to point to a URL that accesses the Goerli test network. + 1. Set `OPTI_GOERLI_URL` to point to a URL that accesses the Goerli test network. 1. Install the necessary packages. @@ -42,57 +48,89 @@ This setup assumes you already have [Node.js](https://nodejs.org/en/) and [yarn] yarn ``` -### Ethereum message to Optimism +#### Ethereum message to Optimism + +1. Connect the Hardhat console to Optimism Goerli (L2): + + ```sh + yarn hardhat console --network optimism-goerli + ``` + +1. Connect to the greeter on L2: + + ```js + Greeter = await ethers.getContractFactory("Greeter") + greeter = await Greeter.attach("0xC0836cCc8FBa87637e782Dde6e6572aD624fb984") + await greeter.greet() + ``` -1. [Browse to the Greeter contract on Etherscan](https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9#readContract) and click **greet** to see the greeting. + -1. Connect the Hardhat console to Kovan (L1): +1. In a separatate terminal window connect the Hardhat console to Goerli (L1): ```sh - yarn hardhat console --network kovan + yarn hardhat console --network goerli ``` -1. Deploy and call the `ControlL2Greeter` contract. +1. Deploy and call the `FromL1_ControlL2Greeter` contract. ```js - Controller = await ethers.getContractFactory("ControlL2Greeter") + Controller = await ethers.getContractFactory("FromL1_ControlL2Greeter") controller = await Controller.deploy() tx = await controller.setGreeting("Shalom") rcpt = await tx.wait() ``` -1. Make a note of the address of `ControlL2Greeter`. +1. Make a note of the address of `FromL1_ControlL2Greeter`. ```js controller.address ``` -1. [Browse to the Greeter contract on Etherscan](https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9#readContract) and click **greet** to see the new greeting. +1. Back in the Optimism Goerli console, see the new greeting. + Note that it may take a few minutes to update. + + ```js + await greeter.greet() + ``` + +1. In the block explorer, [view the event log](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984/logs#address-tabs). + Notice that the `xorigin` value is the controller address. +#### Optimism message to Ethereum +##### Send the message -### Optimism message to Ethereum +1. Get the current L1 greeting. There are two ways to do that: -#### Send the message + - [Browse to the Greeter contract on Etherscan](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e#readContract) and click **greet** to see the greeting. -1. [Browse to the Greeter contract on Etherscan](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0#readContract) and click **greet** to see the greeting. + - Run these commands in the Hardhat console connected to L1 Goerli: -1. Connect the Hardhat console to Optimistic Kovan (L2): + ```js + Greeter = await ethers.getContractFactory("Greeter") + greeter = await Greeter.attach("0x7fA4D972bB15B71358da2D937E4A830A9084cf2e") + await greeter.greet() + ``` + +1. Connect the Hardhat console to Optimistic Goerli (L2): ```sh - yarn hardhat console --network optimistic-kovan + yarn hardhat console --network optimistic-goerli ``` -1. Deploy and call the `ControlL1Greeter` contract. +1. Deploy and call the `FromL2_ControlL1Greeter` contract. ```js - Controller = await ethers.getContractFactory("ControlL1Greeter") + Controller = await ethers.getContractFactory("FromL2_ControlL1Greeter") controller = await Controller.deploy() tx = await controller.setGreeting("Shalom") rcpt = await tx.wait() ``` -1. Make a note of the address of `ControlL1Greeter`. +1. Make a note of the address of `FromL2_ControlL1Greeter`. ```js controller.address @@ -104,18 +142,18 @@ This setup assumes you already have [Node.js](https://nodejs.org/en/) and [yarn] tx.hash ``` -#### Receive the message +##### Receive the message Transactions from Optimism to Ethereum are not accepted immediately, because we need to wait [to make sure there are no successful challenges](https://community.optimism.io/docs/how-optimism-works/#fault-proofs). -Once the fault challenge period is over (one minute on Kovan, seven days on the production network) it is necessary to claim the transaction on L1. +Once the fault challenge period is over (ten seconds on Goerli, seven days on the production network) it is necessary to claim the transaction on L1. This is a complex process that requires a [Merkle proof](https://medium.com/crypto-0-nite/merkle-proofs-explained-6dd429623dc5). You can do it using [the Optimism SDK](https://www.npmjs.com/package/@eth-optimism/sdk). -1. Connect the Hardhat console to Kovan (L1): +1. Connect the Hardhat console to Goerli (L1): ```sh - yarn hardhat console --network kovan + yarn hardhat console --network goerli ``` 1. Get the SDK (it is already in `node_modules`). @@ -128,9 +166,11 @@ You can do it using [the Optimism SDK](https://www.npmjs.com/package/@eth-optimi ```js l1Signer = await ethers.getSigner() - crossChainMessenger = new sdk.CrossChainMessenger({ l1ChainId: 42, + crossChainMessenger = new sdk.CrossChainMessenger({ + l1ChainId: 5, + l2ChainId: 420, l1SignerOrProvider: l1Signer, - l2SignerOrProvider: new ethers.providers.JsonRpcProvider("https://kovan.optimism.io") + l2SignerOrProvider: new ethers.providers.JsonRpcProvider("https://goerli.optimism.io") }) ``` @@ -142,19 +182,203 @@ You can do it using [the Optimism SDK](https://www.npmjs.com/package/@eth-optimi (await crossChainMessenger.getMessageStatus(hash)) == sdk.MessageStatus.READY_FOR_RELAY ``` + `await crossChainMessenger.getMessageStatus(hash)` can return several values at this stage: + + - `sdk.MessageStatus.STATE_ROOT_NOT_PUBLISHED` (2): The state root has not been published yet. + The challenge period only starts when the state root is published, which is means you might need to wait a few minutes. + + - `sdk.MessageStatus.IN_CHALLENGE_PERIOD` (3): Still in the challenge period, wait a few seconds. + + - `sdk.MessageStatus.READY_FOR_RELAY` (4): Ready to finalize the message. + Go on to the next step. + + 1. Finalize the message. ```js - (await crossChainMessenger.finalizeMessage(hash)) + await crossChainMessenger.finalizeMessage(hash) + ``` + +1. To verify the change, [browse to the Greeter contract on Etherscan](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e#readContract) again and click **greet** to see the new greeting. + + +### Foundry + +#### Setup + +1. Install the `@eth-optimims/sdk` library (assuming you already have Node.js and yarn): + + ```sh + cd foundry/lib + yarn + ``` + +1. Create environment variables for the URLs for Goerli and Optimistic Goerli: + + ```sh + cd .. + export GOERLI_URL= ... + export OPTI_GOERLI_URL= ... + ``` + +1. Create environment variables for the Greeter contracts' addresses + + ```sh + export GREETER_L1=0x7fA4D972bB15B71358da2D937E4A830A9084cf2e + export GREETER_L2=0xC0836cCc8FBa87637e782Dde6e6572aD624fb984 + ``` + +1. Put your account mnemonic in the file `mnem.delme`. + + +#### Ethereum message to Optimism + +1. See the current greeting. + + ```sh + cast call --rpc-url $OPTI_GOERLI_URL $GREETER_L2 "greet()" | cast --to-ascii + ``` + +1. Deploy the `FromL1_ControlL2Greeter` contract. + + ```sh + forge create FromL1_ControlL2Greeter --rpc-url $GOERLI_URL --mnemonic-path mnem.delme + ``` + +1. Create an environment variable for the `Deployed to:` address: + + ```sh + export FROM_L1_CONTROLLER= << address >> + ``` + +1. Send a transaction to change the L2 greeting: + + ```sh + cast send --rpc-url $GOERLI_URL \ + --mnemonic-path mnem.delme --gas-limit 130000 \ + $FROM_L1_CONTROLLER "setGreeting(string)" '"Salam"' + ``` + + Note that `cast` doesn't estimate the gas limit correctly in this case, so you need to specify it manually. + +1. See the greeting has changed. Note that the change might take a few minutes to propagate. + + ```sh + cast call --rpc-url $OPTI_GOERLI_URL $GREETER_L2 "greet()" | cast --to-ascii + ``` + +#### Optimism message to Ethereum + +##### Send the message + +1. See the current greeting. + + ```sh + cast call --rpc-url $GOERLI_URL $GREETER_L1 "greet()" | cast --to-ascii + ``` + +1. Deploy the `FromL2_ControlL1Greeter` contract. + + ```sh + forge create FromL2_ControlL1Greeter --rpc-url $OPTI_GOERLI_URL --mnemonic-path mnem.delme --legacy + ``` + +1. Create an environment variable for the `Deployed to:` address: + + ```sh + export FROM_L2_CONTROLLER= << address >> + ``` + +1. Send a transaction to change the L1 greeting: + + ```sh + cast send --rpc-url $OPTI_GOERLI_URL --legacy \ + --mnemonic-path mnem.delme $FROM_L2_CONTROLLER \ + "setGreeting(string)" '"Salam"' + ``` + +1. Create an environment variable for the transaction hash: + + ```sh + export HASH= << transaction hash >> + ``` + +##### Receive the message + + +1. Run `node`, the JavaScript command line. + + ```sh + cd lib + node + ``` + +1. Get the SDK and the Ethers libraries (they are already in `node_modules`). + + ```js + sdk = require("@eth-optimism/sdk") + ethers = require("ethers") + ``` + +1. Configure a `CrossChainMessenger` object: + + ```js + l1Provider = new ethers.providers.JsonRpcProvider(process.env.GOERLI_URL) + mnemonic = fs.readFileSync("../mnem.delme").toString() + wallet = ethers.Wallet.fromMnemonic(mnemonic.slice(0,-1)) + l1Signer = wallet.connect(l1Provider) + l2Provider = new ethers.providers.JsonRpcProvider(process.env.OPTI_GOERLI_URL) + crossChainMessenger = new sdk.CrossChainMessenger({ + l1ChainId: 5, + l2ChainId: 420, + l1SignerOrProvider: l1Signer, + l2SignerOrProvider: l2Provider + }) + ``` + +1. To check the status of the transaction, run these commands: + + ```js + statusPromise = crossChainMessenger.getMessageStatus(process.env.HASH) + statusPromise.then(status => console.log(status === sdk.MessageStatus.READY_FOR_RELAY)) + ``` + + `crossChainMessenger.getMessageStatus(hash)` can return several values at this stage: + + - `sdk.MessageStatus.STATE_ROOT_NOT_PUBLISHED` (2): The state root has not been published yet. + The challenge period only starts when the state root is published, which is means you might need to wait a few minutes. + + - `sdk.MessageStatus.IN_CHALLENGE_PERIOD` (3): Still in the challenge period, wait a few seconds. + + - `sdk.MessageStatus.READY_FOR_RELAY` (4): Ready to finalize the message. + Go on to the next step. + + +1. Finalize the message. + + ```js + crossChainMessenger.finalizeMessage(process.env.HASH) + ``` + + +1. Exit `node`: + + ```js + .exit + ``` + +1. See the greeting has changed. + + ```sh + cast call --rpc-url $OPTI_GOERLI_URL $GREETER_L2 "greet()" | cast --to-ascii ``` -1. To verify the change, [browse to the Greeter contract on Etherscan](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0#readContract) again and click **greet** to see the new greeting. ## How it's done (in Solidity) -We'll go over the L1 contract that controls Greeter on L2, [`ControlL2Greeter.sol`](contracts/ControlL2Greeter.sol). -Except for addresses, the contract going the other direction, [`ControlL1Greeter.sol`](contracts/ControlL21reeter.sol), is identical. +We'll go over the L1 contract that controls Greeter on L2, [`FromL1_ControlL2Greeter.sol`](hardhat/contracts/FromL1_ControlL2Greeter.sol). +Except for addresses, the contract going the other direction, [`FromL2_ControlL1Greeter.sol`](hardhat/contracts/FromL2_ControlL21reeter.sol), is identical. ```solidity //SPDX-License-Identifier: Unlicense @@ -169,19 +393,19 @@ This line imports the interface to send messages, [`ICrossDomainMessenger.sol`]( ```solidity -contract ControlL2Greeter { - address crossDomainMessengerAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; +contract FromL1_ControlL2Greeter { + address crossDomainMessengerAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; ``` -This is the address of [`Proxy_OVM_L1CrossDomainMessenger`](https://github.com/ethereum-optimism/optimism/blob/develop/packages/contracts/deployments/kovan/Proxy__OVM_L1CrossDomainMessenger.json#L2) on Kovan. +This is the address of [`Proxy_OVM_L1CrossDomainMessenger`](https://github.com/ethereum-optimism/optimism/blob/develop/packages/contracts/deployments/goerli/Proxy__OVM_L1CrossDomainMessenger.json#L2) on Goerli. To call L2 from L1 on mainnet, you need to [use this address](https://github.com/ethereum-optimism/optimism/blob/develop/packages/contracts/deployments/mainnet/Proxy__OVM_L1CrossDomainMessenger.json#L2). To call L1 from L2, on either mainnet or Kovan, use the address of `L2CrossDomainMessenger`, 0x4200000000000000000000000000000000000007. ```solidity - address greeterL2Addr = 0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9; + address greeterL2Addr = 0xC0836cCc8FBa87637e782Dde6e6572aD624fb984; ``` -This is the address on which `Greeter` is installed on Optimistic Kovan. +This is the address on which `Greeter` is installed on Optimistic Goerli. ```solidity @@ -225,13 +449,13 @@ This call actually sends the message. It gets three parameters: ```solidity } // function setGreeting -} // contract ControlL2Greeter +} // contract FromL1_ControlL2Greeter ``` ## Getting the source address -If you look at Etherscan, for either the [L1 Greeter](https://kovan.etherscan.io/address/0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0#events) or the [L2 Greeter](https://kovan-optimistic.etherscan.io/address/0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9#events), you will see events with the source address on the other layer. +If you look at Etherscan, for either the [L1 Greeter](https://goerli.etherscan.io/address/0x7fA4D972bB15B71358da2D937E4A830A9084cf2e#events) or the [L2 Greeter](https://blockscout.com/optimism/goerli/address/0xC0836cCc8FBa87637e782Dde6e6572aD624fb984/logs#address-tabs), you will see events with the source address on the other layer. The way this works is that the cross domain messenger that calls the target contract has a method, `xDomainMessageSender()`, that returns the source address. It is used by the `getXsource` function in `Greeter`. ```solidity @@ -240,9 +464,11 @@ The way this works is that the cross domain messenger that calls the target cont address cdmAddr = address(0); ``` -It might look like it would be more efficient to calculate the address of the cross domain messanger just once, but that would involve changing the state, which is an expensive operation. This way it can be a `view` function without a gas cost. +It might look like it would be more efficient to calculate the address of the cross domain messanger just once, but that would involve changing the state, which is an expensive operation. +Unless we are going to run this code thousands of times, it is more efficient to just have a few `if` statements. ```solidity + // Mainnet if (block.chainid == 1) cdmAddr = 0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1; @@ -250,13 +476,18 @@ It might look like it would be more efficient to calculate the address of the cr if (block.chainid == 42) cdmAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; - // L2 - if (block.chainid == 10 || block.chainid == 69) + // Goerli + if (block.chainid == 5) + cdmAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; + + // L2 (same address on every network) + if (block.chainid == 10 || block.chainid == 69 || block.chainid == 420) cdmAddr = 0x4200000000000000000000000000000000000007; + ``` -The three possibilities for the cross domain messenger's address. -On L2 Optimism has full control of the genesis block, so we can put all of our contracts on convenient addresses. L1 does not afford us this luxury. +There are three possibilities for the cross domain messenger's address on L1, because the address is not under our control. +On L2 Optimism has full control of the genesis block, so we can put all of our contracts on convenient addresses. ```solidity // If this isn't a cross domain message diff --git a/cross-dom-comm/foundry/foundry.toml b/cross-dom-comm/foundry/foundry.toml new file mode 100644 index 00000000..d7dd144b --- /dev/null +++ b/cross-dom-comm/foundry/foundry.toml @@ -0,0 +1,6 @@ +[default] +src = 'src' +out = 'out' +libs = ['lib'] + +# See more config options https://github.com/foundry-rs/foundry/tree/master/config \ No newline at end of file diff --git a/cross-dom-comm/foundry/lib/forge-std b/cross-dom-comm/foundry/lib/forge-std new file mode 160000 index 00000000..27e14b7f --- /dev/null +++ b/cross-dom-comm/foundry/lib/forge-std @@ -0,0 +1 @@ +Subproject commit 27e14b7f2448e5f5ac32719f51fe652aa0b0733e diff --git a/cross-dom-comm/foundry/lib/package.json b/cross-dom-comm/foundry/lib/package.json new file mode 100644 index 00000000..5784e810 --- /dev/null +++ b/cross-dom-comm/foundry/lib/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "@eth-optimism/sdk": "^1.3.0" + } +} diff --git a/cross-dom-comm/foundry/lib/yarn.lock b/cross-dom-comm/foundry/lib/yarn.lock new file mode 100644 index 00000000..3ea677b9 --- /dev/null +++ b/cross-dom-comm/foundry/lib/yarn.lock @@ -0,0 +1,908 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@eth-optimism/contracts@0.5.30": + version "0.5.30" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.30.tgz#855c3c0a47e7bab54c91459592312699947b71a0" + integrity sha512-mmB/PeK7ADcQVqLzT7NaDG9tpuPnv7WAF9fcqM8GLIGuVCcyPSWR3TE/MN0fAnQ2Vyffd84+YDjyBLmL1gKepA== + dependencies: + "@eth-optimism/core-utils" "0.9.1" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + +"@eth-optimism/core-utils@0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.1.tgz#6d011e0c272b5373828c239120b6e9fb0cf961c5" + integrity sha512-RhSoRCVGAPh2U9z9dEH6OBmva5vhdc49qncTFW+MV4dVQ963/vf4lYZEAnu2SOdy5F7EV4z0KkNMj0OlpEHxtw== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/providers" "^5.6.8" + "@ethersproject/transactions" "^5.6.2" + bufio "^1.0.7" + chai "^4.3.4" + ethers "^5.6.8" + +"@eth-optimism/sdk@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.0.tgz#15bb12fae78fa582d7b16913d10b198070ad029f" + integrity sha512-th8yj0ukqJOFereY63aF2foCSWtTuaKhkoE9QdRBClH75rp0m65ksoDdOkpWgo8jQOj5jYXHRUjrJEzexdyHaw== + dependencies: + "@eth-optimism/contracts" "0.5.30" + "@eth-optimism/core-utils" "0.9.1" + lodash "^4.17.21" + merkletreejs "^0.2.27" + rlp "^2.2.7" + +"@ethersproject/abi@5.6.4", "@ethersproject/abi@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.4.tgz#f6e01b6ed391a505932698ecc0d9e7a99ee60362" + integrity sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/abstract-provider@5.6.1", "@ethersproject/abstract-provider@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.1.tgz#02ddce150785caf0c77fe036a0ebfcee61878c59" + integrity sha512-BxlIgogYJtp1FS8Muvj8YfdClk3unZH0vRMVX791Z9INBNT/kuACZ9GzaY1Y4yFq+YSy6/w4gzj3HCRKrK9hsQ== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + +"@ethersproject/abstract-signer@5.6.2", "@ethersproject/abstract-signer@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.2.tgz#491f07fc2cbd5da258f46ec539664713950b0b33" + integrity sha512-n1r6lttFBG0t2vNiI3HoWaS/KdOt8xyDjzlP2cuevlWLG6EX0OwcKLyG/Kp/cuwNxdy/ous+R/DEMdTUwWQIjQ== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/address@5.6.1", "@ethersproject/address@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.1.tgz#ab57818d9aefee919c5721d28cd31fd95eff413d" + integrity sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + +"@ethersproject/base64@5.6.1", "@ethersproject/base64@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.1.tgz#2c40d8a0310c9d1606c2c37ae3092634b41d87cb" + integrity sha512-qB76rjop6a0RIYYMiB4Eh/8n+Hxu2NIZm8S/Q7kNo5pmZfXhHGHmS4MinUainiBC54SCyRnwzL+KZjj8zbsSsw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + +"@ethersproject/basex@5.6.1", "@ethersproject/basex@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.1.tgz#badbb2f1d4a6f52ce41c9064f01eab19cc4c5305" + integrity sha512-a52MkVz4vuBXR06nvflPMotld1FJWSj2QT0985v7P/emPZO00PucFAkbcmq2vpVU7Ts7umKiSI6SppiLykVWsA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + +"@ethersproject/bignumber@5.6.2", "@ethersproject/bignumber@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.2.tgz#72a0717d6163fab44c47bcc82e0c550ac0315d66" + integrity sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" + integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/constants@5.6.1", "@ethersproject/constants@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.1.tgz#e2e974cac160dd101cf79fdf879d7d18e8cb1370" + integrity sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + +"@ethersproject/contracts@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.6.2.tgz#20b52e69ebc1b74274ff8e3d4e508de971c287bc" + integrity sha512-hguUA57BIKi6WY0kHvZp6PwPlWF87MCeB4B7Z7AbUpTxfFXFdn/3b0GmjZPagIHS+3yhcBJDnuEfU4Xz+Ks/8g== + dependencies: + "@ethersproject/abi" "^5.6.3" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + +"@ethersproject/hash@5.6.1", "@ethersproject/hash@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.1.tgz#224572ea4de257f05b4abf8ae58b03a67e99b0f4" + integrity sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/hdnode@5.6.2", "@ethersproject/hdnode@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.2.tgz#26f3c83a3e8f1b7985c15d1db50dc2903418b2d2" + integrity sha512-tERxW8Ccf9CxW2db3WsN01Qao3wFeRsfYY9TCuhmG0xNpl2IO8wgXU3HtWIZ49gUWPggRy4Yg5axU0ACaEKf1Q== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/json-wallets@5.6.1", "@ethersproject/json-wallets@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.1.tgz#3f06ba555c9c0d7da46756a12ac53483fe18dd91" + integrity sha512-KfyJ6Zwz3kGeX25nLihPwZYlDqamO6pfGKNnVMWWfEVVp42lTfCZVXXy5Ie8IZTN0HKwAngpIPi7gk4IJzgmqQ== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.6.1", "@ethersproject/keccak256@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.1.tgz#b867167c9b50ba1b1a92bccdd4f2d6bd168a91cc" + integrity sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" + integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== + +"@ethersproject/networks@5.6.4", "@ethersproject/networks@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.4.tgz#51296d8fec59e9627554f5a8a9c7791248c8dc07" + integrity sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/pbkdf2@5.6.1", "@ethersproject/pbkdf2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.1.tgz#f462fe320b22c0d6b1d72a9920a3963b09eb82d1" + integrity sha512-k4gRQ+D93zDRPNUfmduNKq065uadC2YjMP/CqwwX5qG6R05f47boq6pLZtV/RnC4NZAYOPH1Cyo54q0c9sshRQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + +"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/providers@5.6.8", "@ethersproject/providers@^5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.6.1", "@ethersproject/random@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.1.tgz#66915943981bcd3e11bbd43733f5c3ba5a790255" + integrity sha512-/wtPNHwbmng+5yi3fkipA8YBT59DdkGRoC2vWk09Dci/q5DlgnMkhIycjHlavrvrjJBkFjO/ueLyT+aUDfc4lA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/rlp@5.6.1", "@ethersproject/rlp@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.1.tgz#df8311e6f9f24dcb03d59a2bac457a28a4fe2bd8" + integrity sha512-uYjmcZx+DKlFUk7a5/W9aQVaoEC7+1MOBgNtvNg13+RnuUwT4F0zTovC0tmay5SmRslb29V1B7Y5KCri46WhuQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/sha2@5.6.1", "@ethersproject/sha2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.1.tgz#211f14d3f5da5301c8972a8827770b6fd3e51656" + integrity sha512-5K2GyqcW7G4Yo3uenHegbXRPDgARpWUiXc6RiF7b6i/HXUoWlb7uCARh7BAHg7/qT/Q5ydofNwiZcim9qpjB6g== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.6.2", "@ethersproject/signing-key@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.2.tgz#8a51b111e4d62e5a62aee1da1e088d12de0614a3" + integrity sha512-jVbu0RuP7EFpw82vHcL+GP35+KaNruVAZM90GxgQnGqB6crhBqW/ozBfFvdeImtmb4qPko0uxXjn8l9jpn0cwQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.6.1.tgz#5845e71182c66d32e6ec5eefd041fca091a473e2" + integrity sha512-KWqVLkUUoLBfL1iwdzUVlkNqAUIFMpbbeH0rgCfKmJp0vFtY4AsaN91gHKo9ZZLkC4UOm3cI3BmMV4N53BOq4g== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/strings@5.6.1", "@ethersproject/strings@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.1.tgz#dbc1b7f901db822b5cafd4ebf01ca93c373f8952" + integrity sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/transactions@5.6.2", "@ethersproject/transactions@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.2.tgz#793a774c01ced9fe7073985bb95a4b4e57a6370b" + integrity sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + +"@ethersproject/units@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.6.1.tgz#ecc590d16d37c8f9ef4e89e2005bda7ddc6a4e6f" + integrity sha512-rEfSEvMQ7obcx3KWD5EWWx77gqv54K6BKiZzKxkQJqtpriVsICrktIQmKl8ReNToPeIYPnFHpXvKpi068YFZXw== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/web@5.6.1", "@ethersproject/web@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.1.tgz#6e2bd3ebadd033e6fe57d072db2b69ad2c9bdf5d" + integrity sha512-/vSyzaQlNXkO1WV+RneYKqCJwualcUdx/Z3gseVovZP0wIlOFcCE1hkRhKBH8ImKbGQbMl9EAAyJFrJu7V0aqA== + dependencies: + "@ethersproject/base64" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@ethersproject/wordlists@5.6.1", "@ethersproject/wordlists@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.1.tgz#1e78e2740a8a21e9e99947e47979d72e130aeda1" + integrity sha512-wiPRgBpNbNwCQFoCr8bcWO8o5I810cqO6mkdtKfLKFlLxeCWcnzDi4Alu8iyNzlhYuS9npCwivMbRWF19dyblw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + +"@types/bn.js@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.0.tgz#32c5d271503a12653c62cf4d2b45e6eab8cebc68" + integrity sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA== + dependencies: + "@types/node" "*" + +"@types/node@*": + version "18.0.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.0.6.tgz#0ba49ac517ad69abe7a1508bc9b3a5483df9d5d7" + integrity sha512-/xUq6H2aQm261exT6iZTMifUySEt4GR5KX8eYyY+C4MSNPqSh9oNIP7tz2GLKTlFaiBbgZNxffoR3CVRG+cljw== + +"@types/pbkdf2@^3.0.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@types/pbkdf2/-/pbkdf2-3.1.0.tgz#039a0e9b67da0cdc4ee5dab865caa6b267bb66b1" + integrity sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ== + dependencies: + "@types/node" "*" + +"@types/secp256k1@^4.0.1": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/secp256k1/-/secp256k1-4.0.3.tgz#1b8e55d8e00f08ee7220b4d59a6abe89c37a901c" + integrity sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w== + dependencies: + "@types/node" "*" + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +assertion-error@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" + integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== + +base-x@^3.0.2: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +bignumber.js@^9.0.1: + version "9.0.2" + resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.0.2.tgz#71c6c6bed38de64e24a65ebe16cfcf23ae693673" + integrity sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw== + +blakejs@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" + integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== + +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +browserify-aes@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +bs58@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" + integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== + dependencies: + base-x "^3.0.2" + +bs58check@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/bs58check/-/bs58check-2.1.2.tgz#53b018291228d82a5aa08e7d796fdafda54aebfc" + integrity sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA== + dependencies: + bs58 "^4.0.0" + create-hash "^1.1.0" + safe-buffer "^5.1.2" + +buffer-reverse@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-reverse/-/buffer-reverse-1.0.1.tgz#49283c8efa6f901bc01fa3304d06027971ae2f60" + integrity sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg== + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== + +bufio@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/bufio/-/bufio-1.0.7.tgz#b7f63a1369a0829ed64cc14edf0573b3e382a33e" + integrity sha512-bd1dDQhiC+bEbEfg56IdBv7faWa6OipMs/AFFFvtFnB3wAYjlwQpQRZ0pm6ZkgtfL0pILRXhKxOiQj6UzoMR7A== + +chai@^4.3.4: + version "4.3.6" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.6.tgz#ffe4ba2d9fa9d6680cc0b370adae709ec9011e9c" + integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.2" + deep-eql "^3.0.1" + get-func-name "^2.0.0" + loupe "^2.3.1" + pathval "^1.1.1" + type-detect "^4.0.5" + +check-error@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" + integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA== + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + md5.js "^1.3.4" + ripemd160 "^2.0.1" + sha.js "^2.4.0" + +create-hmac@^1.1.4, create-hmac@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +crypto-js@^3.1.9-1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.3.0.tgz#846dd1cce2f68aacfa156c8578f926a609b7976b" + integrity sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q== + +deep-eql@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" + integrity sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw== + dependencies: + type-detect "^4.0.0" + +elliptic@6.5.4, elliptic@^6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +ethereum-bloom-filters@^1.0.6: + version "1.0.10" + resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.0.10.tgz#3ca07f4aed698e75bd134584850260246a5fed8a" + integrity sha512-rxJ5OFN3RwjQxDcFP2Z5+Q9ho4eIdEmSc2ht0fCu8Se9nbXjZ7/031uXoUYJ87KHCOdVeiUuwSnoS7hmYAGVHA== + dependencies: + js-sha3 "^0.8.0" + +ethereum-cryptography@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191" + 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" + +ethereumjs-util@^7.1.0: + version "7.1.5" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181" + integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg== + 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" + +ethers@^5.6.8: + version "5.6.9" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.9.tgz#4e12f8dfcb67b88ae7a78a9519b384c23c576a4d" + integrity sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA== + dependencies: + "@ethersproject/abi" "5.6.4" + "@ethersproject/abstract-provider" "5.6.1" + "@ethersproject/abstract-signer" "5.6.2" + "@ethersproject/address" "5.6.1" + "@ethersproject/base64" "5.6.1" + "@ethersproject/basex" "5.6.1" + "@ethersproject/bignumber" "5.6.2" + "@ethersproject/bytes" "5.6.1" + "@ethersproject/constants" "5.6.1" + "@ethersproject/contracts" "5.6.2" + "@ethersproject/hash" "5.6.1" + "@ethersproject/hdnode" "5.6.2" + "@ethersproject/json-wallets" "5.6.1" + "@ethersproject/keccak256" "5.6.1" + "@ethersproject/logger" "5.6.0" + "@ethersproject/networks" "5.6.4" + "@ethersproject/pbkdf2" "5.6.1" + "@ethersproject/properties" "5.6.0" + "@ethersproject/providers" "5.6.8" + "@ethersproject/random" "5.6.1" + "@ethersproject/rlp" "5.6.1" + "@ethersproject/sha2" "5.6.1" + "@ethersproject/signing-key" "5.6.2" + "@ethersproject/solidity" "5.6.1" + "@ethersproject/strings" "5.6.1" + "@ethersproject/transactions" "5.6.2" + "@ethersproject/units" "5.6.1" + "@ethersproject/wallet" "5.6.2" + "@ethersproject/web" "5.6.1" + "@ethersproject/wordlists" "5.6.1" + +ethjs-unit@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw== + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + +evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +get-func-name@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" + integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig== + +hash-base@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" + integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== + dependencies: + inherits "^2.0.4" + readable-stream "^3.6.0" + safe-buffer "^5.2.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA== + +js-sha3@0.8.0, js-sha3@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +keccak@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.2.tgz#4c2c6e8c54e04f2670ee49fa734eb9da152206e0" + integrity sha512-PyKKjkH53wDMLGrvmRGSNWgmSxZOUqbnXwKL9tmgbFYA1iAYqW21kfR7mZXV0MlESiefxQQE9X9fTa3X+2MPDQ== + dependencies: + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + readable-stream "^3.6.0" + +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +loupe@^2.3.1: + version "2.3.4" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-2.3.4.tgz#7e0b9bffc76f148f9be769cb1321d3dcf3cb25f3" + integrity sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ== + dependencies: + get-func-name "^2.0.0" + +md5.js@^1.3.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + safe-buffer "^5.1.2" + +merkletreejs@^0.2.27: + version "0.2.32" + resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.32.tgz#cf1c0760e2904e4a1cc269108d6009459fd06223" + integrity sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ== + dependencies: + bignumber.js "^9.0.1" + buffer-reverse "^1.0.1" + crypto-js "^3.1.9-1" + treeify "^1.1.0" + web3-utils "^1.3.4" + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +node-addon-api@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" + integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== + +node-gyp-build@^4.2.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40" + integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== + +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig== + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + +pathval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.1.tgz#8534e77a77ce7ac5a2512ea21e0fdb8fcf6c3d8d" + integrity sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ== + +pbkdf2@^3.0.17: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" + 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" + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +readable-stream@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +rlp@^2.2.4, rlp@^2.2.7: + version "2.2.7" + resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf" + integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ== + dependencies: + bn.js "^5.2.0" + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +scrypt-js@3.0.1, scrypt-js@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +secp256k1@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-4.0.3.tgz#c4559ecd1b8d3c1827ed2d1b94190d69ce267303" + integrity sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA== + dependencies: + elliptic "^6.5.4" + node-addon-api "^2.0.0" + node-gyp-build "^4.2.0" + +setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.11" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A== + dependencies: + is-hex-prefixed "1.0.0" + +treeify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8" + integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A== + +type-detect@^4.0.0, type-detect@^4.0.5: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +utf8@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" + integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ== + +util-deprecate@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +web3-utils@^1.3.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.4.tgz#eb6fa3706b058602747228234453811bbee017f5" + integrity sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA== + 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" + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== diff --git a/cross-dom-comm/foundry/remappings.txt b/cross-dom-comm/foundry/remappings.txt new file mode 100644 index 00000000..a1d9c56a --- /dev/null +++ b/cross-dom-comm/foundry/remappings.txt @@ -0,0 +1,2 @@ +@eth-optimism/=lib/node_modules/@eth-optimism/ + diff --git a/cross-dom-comm/foundry/script/Contract.s.sol b/cross-dom-comm/foundry/script/Contract.s.sol new file mode 100644 index 00000000..f5cb3933 --- /dev/null +++ b/cross-dom-comm/foundry/script/Contract.s.sol @@ -0,0 +1,12 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +import "forge-std/Script.sol"; + +contract ContractScript is Script { + function setUp() public {} + + function run() public { + vm.broadcast(); + } +} diff --git a/cross-dom-comm/foundry/src/Contract.sol b/cross-dom-comm/foundry/src/Contract.sol new file mode 100644 index 00000000..655b543e --- /dev/null +++ b/cross-dom-comm/foundry/src/Contract.sol @@ -0,0 +1,4 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +contract Contract {} diff --git a/cross-dom-comm/contracts/ControlL2Greeter.sol b/cross-dom-comm/foundry/src/FromL1_ControlL2Greeter.sol similarity index 60% rename from cross-dom-comm/contracts/ControlL2Greeter.sol rename to cross-dom-comm/foundry/src/FromL1_ControlL2Greeter.sol index b0c6d704..290afd3a 100644 --- a/cross-dom-comm/contracts/ControlL2Greeter.sol +++ b/cross-dom-comm/foundry/src/FromL1_ControlL2Greeter.sol @@ -1,14 +1,16 @@ //SPDX-License-Identifier: Unlicense // This contracts runs on L1, and controls a Greeter on L2. +// The addresses are specific to Optimistic Goerli. pragma solidity ^0.8.0; import { ICrossDomainMessenger } from "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; -contract ControlL2Greeter { - address crossDomainMessengerAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; +contract FromL1_ControlL2Greeter { + // Taken from https://github.com/ethereum-optimism/optimism/tree/develop/packages/contracts/deployments/goerli#layer-1-contracts + address crossDomainMessengerAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; - address greeterL2Addr = 0xD4c204223d6F1Dfad0b7a0b05BB0bCaB6665e0c9; + address greeterL2Addr = 0xC0836cCc8FBa87637e782Dde6e6572aD624fb984; function setGreeting(string calldata _greeting) public { bytes memory message; @@ -23,4 +25,4 @@ contract ControlL2Greeter { ); } // function setGreeting -} // contract ControlL2Greeter +} // contract FromL1_ControlL2Greeter diff --git a/cross-dom-comm/contracts/ControlL1Greeter.sol b/cross-dom-comm/foundry/src/FromL2_ControlL1Greeter.sol similarity index 65% rename from cross-dom-comm/contracts/ControlL1Greeter.sol rename to cross-dom-comm/foundry/src/FromL2_ControlL1Greeter.sol index d637f4cb..e5566ee8 100644 --- a/cross-dom-comm/contracts/ControlL1Greeter.sol +++ b/cross-dom-comm/foundry/src/FromL2_ControlL1Greeter.sol @@ -1,14 +1,17 @@ //SPDX-License-Identifier: Unlicense // This contracts runs on L2, and controls a Greeter on L1. +// The greeter address is specific to Goerli. pragma solidity ^0.8.0; import { ICrossDomainMessenger } from "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; -contract ControlL1Greeter { +contract FromL2_ControlL1Greeter { + // Taken from https://github.com/ethereum-optimism/optimism/tree/develop/packages/contracts/deployments/goerli#layer-2-contracts + // Should be the same on all Optimism networks address crossDomainMessengerAddr = 0x4200000000000000000000000000000000000007; - address greeterL1Addr = 0x11fB328D5Bd8E27917535b6d40b881d35BC39Be0; + address greeterL1Addr = 0x7fA4D972bB15B71358da2D937E4A830A9084cf2e; function setGreeting(string calldata _greeting) public { bytes memory message; @@ -23,4 +26,4 @@ contract ControlL1Greeter { ); } // function setGreeting -} // contract ControlL1Greeter +} // contract FromL2_ControlL1Greeter diff --git a/cross-dom-comm/contracts/Greeter.sol b/cross-dom-comm/foundry/src/Greeter.sol similarity index 86% rename from cross-dom-comm/contracts/Greeter.sol rename to cross-dom-comm/foundry/src/Greeter.sol index b55558c1..9d040235 100644 --- a/cross-dom-comm/contracts/Greeter.sol +++ b/cross-dom-comm/foundry/src/Greeter.sol @@ -33,6 +33,7 @@ contract Greeter { // This is less resource intensive than writing to storage. address cdmAddr = address(0); + // Mainnet if (block.chainid == 1) cdmAddr = 0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1; @@ -40,8 +41,12 @@ contract Greeter { if (block.chainid == 42) cdmAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; - // L2 - if (block.chainid == 10 || block.chainid == 69) + // Goerli + if (block.chainid == 5) + cdmAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; + + // L2 (same address on every network) + if (block.chainid == 10 || block.chainid == 69 || block.chainid == 420) cdmAddr = 0x4200000000000000000000000000000000000007; // If this isn't a cross domain message diff --git a/cross-dom-comm/foundry/test/Contract.t.sol b/cross-dom-comm/foundry/test/Contract.t.sol new file mode 100644 index 00000000..bfaaad95 --- /dev/null +++ b/cross-dom-comm/foundry/test/Contract.t.sol @@ -0,0 +1,12 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.13; + +import "forge-std/Test.sol"; + +contract ContractTest is Test { + function setUp() public {} + + function testExample() public { + assertTrue(true); + } +} diff --git a/cross-dom-comm/hardhat/.env.example b/cross-dom-comm/hardhat/.env.example new file mode 100644 index 00000000..8ea25e5f --- /dev/null +++ b/cross-dom-comm/hardhat/.env.example @@ -0,0 +1,3 @@ +MNEMONIC= << your value here >> +GOERLI_URL= << your value here >> +OPTI_GOERLI_URL= << your value here >> diff --git a/cross-dom-comm/hardhat/contracts/FromL1_ControlL2Greeter.sol b/cross-dom-comm/hardhat/contracts/FromL1_ControlL2Greeter.sol new file mode 100644 index 00000000..290afd3a --- /dev/null +++ b/cross-dom-comm/hardhat/contracts/FromL1_ControlL2Greeter.sol @@ -0,0 +1,28 @@ +//SPDX-License-Identifier: Unlicense +// This contracts runs on L1, and controls a Greeter on L2. +// The addresses are specific to Optimistic Goerli. +pragma solidity ^0.8.0; + +import { ICrossDomainMessenger } from + "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; + +contract FromL1_ControlL2Greeter { + // Taken from https://github.com/ethereum-optimism/optimism/tree/develop/packages/contracts/deployments/goerli#layer-1-contracts + address crossDomainMessengerAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; + + address greeterL2Addr = 0xC0836cCc8FBa87637e782Dde6e6572aD624fb984; + + function setGreeting(string calldata _greeting) public { + bytes memory message; + + message = abi.encodeWithSignature("setGreeting(string)", + _greeting); + + ICrossDomainMessenger(crossDomainMessengerAddr).sendMessage( + greeterL2Addr, + message, + 1000000 // within the free gas limit amount + ); + } // function setGreeting + +} // contract FromL1_ControlL2Greeter diff --git a/cross-dom-comm/hardhat/contracts/FromL2_ControlL1Greeter.sol b/cross-dom-comm/hardhat/contracts/FromL2_ControlL1Greeter.sol new file mode 100644 index 00000000..e5566ee8 --- /dev/null +++ b/cross-dom-comm/hardhat/contracts/FromL2_ControlL1Greeter.sol @@ -0,0 +1,29 @@ +//SPDX-License-Identifier: Unlicense +// This contracts runs on L2, and controls a Greeter on L1. +// The greeter address is specific to Goerli. +pragma solidity ^0.8.0; + +import { ICrossDomainMessenger } from + "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; + +contract FromL2_ControlL1Greeter { + // Taken from https://github.com/ethereum-optimism/optimism/tree/develop/packages/contracts/deployments/goerli#layer-2-contracts + // Should be the same on all Optimism networks + address crossDomainMessengerAddr = 0x4200000000000000000000000000000000000007; + + address greeterL1Addr = 0x7fA4D972bB15B71358da2D937E4A830A9084cf2e; + + function setGreeting(string calldata _greeting) public { + bytes memory message; + + message = abi.encodeWithSignature("setGreeting(string)", + _greeting); + + ICrossDomainMessenger(crossDomainMessengerAddr).sendMessage( + greeterL1Addr, + message, + 1000000 // irrelevant here + ); + } // function setGreeting + +} // contract FromL2_ControlL1Greeter diff --git a/cross-dom-comm/hardhat/contracts/Greeter.sol b/cross-dom-comm/hardhat/contracts/Greeter.sol new file mode 100644 index 00000000..9d040235 --- /dev/null +++ b/cross-dom-comm/hardhat/contracts/Greeter.sol @@ -0,0 +1,59 @@ +//SPDX-License-Identifier: Unlicense +pragma solidity ^0.8.0; + +// For cross domain messages' origin +import { ICrossDomainMessenger } from + "@eth-optimism/contracts/libraries/bridge/ICrossDomainMessenger.sol"; + +contract Greeter { + string greeting; + + event SetGreeting( + address sender, // msg.sender + address origin, // tx.origin + address xorigin); // cross domain origin, if any + + constructor(string memory _greeting) { + greeting = _greeting; + } + + function greet() public view returns (string memory) { + return greeting; + } + + function setGreeting(string memory _greeting) public { + greeting = _greeting; + emit SetGreeting(msg.sender, tx.origin, getXorig()); + } + + + // Get the cross domain origin, if any + function getXorig() private view returns (address) { + // Get the cross domain messenger's address each time. + // This is less resource intensive than writing to storage. + address cdmAddr = address(0); + + // Mainnet + if (block.chainid == 1) + cdmAddr = 0x25ace71c97B33Cc4729CF772ae268934F7ab5fA1; + + // Kovan + if (block.chainid == 42) + cdmAddr = 0x4361d0F75A0186C05f971c566dC6bEa5957483fD; + + // Goerli + if (block.chainid == 5) + cdmAddr = 0x5086d1eEF304eb5284A0f6720f79403b4e9bE294; + + // L2 (same address on every network) + if (block.chainid == 10 || block.chainid == 69 || block.chainid == 420) + cdmAddr = 0x4200000000000000000000000000000000000007; + + // If this isn't a cross domain message + if (msg.sender != cdmAddr) + return address(0); + + // If it is a cross domain message, find out where it is from + return ICrossDomainMessenger(cdmAddr).xDomainMessageSender(); + } // getXorig() +} // contract Greeter diff --git a/cross-dom-comm/hardhat.config.js b/cross-dom-comm/hardhat/hardhat.config.js similarity index 85% rename from cross-dom-comm/hardhat.config.js rename to cross-dom-comm/hardhat/hardhat.config.js index 1c5388ef..a580261e 100644 --- a/cross-dom-comm/hardhat.config.js +++ b/cross-dom-comm/hardhat/hardhat.config.js @@ -23,12 +23,12 @@ task("accounts", "Prints the list of accounts", async (taskArgs, hre) => { module.exports = { solidity: "0.8.4", networks: { - "optimistic-kovan": { - url: 'https://kovan.optimism.io', + "optimism-goerli": { + url: process.env.OPTI_GOERLI_URL, accounts: { mnemonic: process.env.MNEMONIC } }, - "kovan": { - url: process.env.KOVAN_URL, + "goerli": { + url: process.env.GOERLI_URL, accounts: { mnemonic: process.env.MNEMONIC } } } diff --git a/cross-dom-comm/package.json b/cross-dom-comm/hardhat/package.json similarity index 90% rename from cross-dom-comm/package.json rename to cross-dom-comm/hardhat/package.json index 69505674..f067005d 100644 --- a/cross-dom-comm/package.json +++ b/cross-dom-comm/hardhat/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@eth-optimism/contracts": "^0.5.14", - "@eth-optimism/sdk": "^1.0.1", + "@eth-optimism/sdk": "^1.3.0", "dotenv": "^16.0.0" } } diff --git a/cross-dom-comm/test/sample-test.js b/cross-dom-comm/hardhat/test/sample-test.js similarity index 90% rename from cross-dom-comm/test/sample-test.js rename to cross-dom-comm/hardhat/test/sample-test.js index 82bbb50b..990a8c87 100644 --- a/cross-dom-comm/test/sample-test.js +++ b/cross-dom-comm/hardhat/test/sample-test.js @@ -5,6 +5,7 @@ describe("Greeter", function () { const Greeter = await ethers.getContractFactory("Greeter"); const greeter = await Greeter.deploy("Hello, world!"); await greeter.deployed(); + console.log(`Testing with greeter at ${greeter.address}`) expect(await greeter.greet()).to.equal("Hello, world!"); diff --git a/cross-dom-comm/yarn.lock b/cross-dom-comm/hardhat/yarn.lock similarity index 94% rename from cross-dom-comm/yarn.lock rename to cross-dom-comm/hardhat/yarn.lock index 003ea169..4cb88417 100644 --- a/cross-dom-comm/yarn.lock +++ b/cross-dom-comm/hardhat/yarn.lock @@ -18,15 +18,14 @@ resolved "https://registry.yarnpkg.com/@ensdomains/resolver/-/resolver-0.2.4.tgz#c10fe28bf5efbf49bff4666d909aed0265efbc89" integrity sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA== -"@eth-optimism/contracts@0.5.17": - version "0.5.17" - resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.17.tgz#7a14618797c354486f2263a1d5dfab6c28a46458" - integrity sha512-mkey2YjRQ2O+85qeDhkiicAiukWfKixw/vktFO1KqLQ9K2phozJu/79dgBCABjyJfhE5kqJDSn5fBrtgIfc3hQ== +"@eth-optimism/contracts@0.5.30": + version "0.5.30" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.30.tgz#855c3c0a47e7bab54c91459592312699947b71a0" + integrity sha512-mmB/PeK7ADcQVqLzT7NaDG9tpuPnv7WAF9fcqM8GLIGuVCcyPSWR3TE/MN0fAnQ2Vyffd84+YDjyBLmL1gKepA== dependencies: - "@eth-optimism/core-utils" "0.8.1" - "@ethersproject/abstract-provider" "^5.5.1" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/hardware-wallets" "^5.5.0" + "@eth-optimism/core-utils" "0.9.1" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" "@eth-optimism/contracts@^0.5.14": version "0.5.15" @@ -50,27 +49,25 @@ chai "^4.3.4" ethers "^5.5.4" -"@eth-optimism/core-utils@0.8.1": - version "0.8.1" - resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.8.1.tgz#ee7d8815f9ddb67ca3e2f3ec1d8515a46af5caf6" - integrity sha512-GJJvw9cBekvR1xH/f2jpgp6MnbWlMBaVm1h3BA0sEzmlaFufTG4ybGrHkL3nQT0Vqtjs3LYjaExkVmsUzpb7xg== +"@eth-optimism/core-utils@0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.1.tgz#6d011e0c272b5373828c239120b6e9fb0cf961c5" + integrity sha512-RhSoRCVGAPh2U9z9dEH6OBmva5vhdc49qncTFW+MV4dVQ963/vf4lYZEAnu2SOdy5F7EV4z0KkNMj0OlpEHxtw== dependencies: - "@ethersproject/abstract-provider" "^5.5.1" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/providers" "^5.5.3" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/web" "^5.5.1" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/providers" "^5.6.8" + "@ethersproject/transactions" "^5.6.2" bufio "^1.0.7" chai "^4.3.4" - ethers "^5.5.4" + ethers "^5.6.8" -"@eth-optimism/sdk@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.0.1.tgz#4e9c3bfb4ef05cae4b4959918461455a43c85dd6" - integrity sha512-inWOwJpqGtlZu/amE4JsmN9YgwnKuCWSsSiCYVrF2CWHK7MYKXbc61dW7EMwITTDqPzJNd2LD6jk7Y1Ps0b6oQ== +"@eth-optimism/sdk@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.0.tgz#15bb12fae78fa582d7b16913d10b198070ad029f" + integrity sha512-th8yj0ukqJOFereY63aF2foCSWtTuaKhkoE9QdRBClH75rp0m65ksoDdOkpWgo8jQOj5jYXHRUjrJEzexdyHaw== dependencies: - "@eth-optimism/contracts" "0.5.17" - "@eth-optimism/core-utils" "0.8.1" + "@eth-optimism/contracts" "0.5.30" + "@eth-optimism/core-utils" "0.9.1" lodash "^4.17.21" merkletreejs "^0.2.27" rlp "^2.2.7" @@ -227,6 +224,21 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" +"@ethersproject/abi@5.6.4", "@ethersproject/abi@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.4.tgz#f6e01b6ed391a505932698ecc0d9e7a99ee60362" + integrity sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/abstract-provider@5.5.1", "@ethersproject/abstract-provider@^5.5.0", "@ethersproject/abstract-provider@^5.5.1": version "5.5.1" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.5.1.tgz#2f1f6e8a3ab7d378d8ad0b5718460f85649710c5" @@ -240,6 +252,19 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/web" "^5.5.0" +"@ethersproject/abstract-provider@5.6.1", "@ethersproject/abstract-provider@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.1.tgz#02ddce150785caf0c77fe036a0ebfcee61878c59" + integrity sha512-BxlIgogYJtp1FS8Muvj8YfdClk3unZH0vRMVX791Z9INBNT/kuACZ9GzaY1Y4yFq+YSy6/w4gzj3HCRKrK9hsQ== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + "@ethersproject/abstract-signer@5.5.0", "@ethersproject/abstract-signer@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.5.0.tgz#590ff6693370c60ae376bf1c7ada59eb2a8dd08d" @@ -251,6 +276,17 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/properties" "^5.5.0" +"@ethersproject/abstract-signer@5.6.2", "@ethersproject/abstract-signer@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.2.tgz#491f07fc2cbd5da258f46ec539664713950b0b33" + integrity sha512-n1r6lttFBG0t2vNiI3HoWaS/KdOt8xyDjzlP2cuevlWLG6EX0OwcKLyG/Kp/cuwNxdy/ous+R/DEMdTUwWQIjQ== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/address@5.5.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.5.0.tgz#bcc6f576a553f21f3dd7ba17248f81b473c9c78f" @@ -262,6 +298,17 @@ "@ethersproject/logger" "^5.5.0" "@ethersproject/rlp" "^5.5.0" +"@ethersproject/address@5.6.1", "@ethersproject/address@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.1.tgz#ab57818d9aefee919c5721d28cd31fd95eff413d" + integrity sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/base64@5.5.0", "@ethersproject/base64@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.5.0.tgz#881e8544e47ed976930836986e5eb8fab259c090" @@ -269,6 +316,13 @@ dependencies: "@ethersproject/bytes" "^5.5.0" +"@ethersproject/base64@5.6.1", "@ethersproject/base64@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.1.tgz#2c40d8a0310c9d1606c2c37ae3092634b41d87cb" + integrity sha512-qB76rjop6a0RIYYMiB4Eh/8n+Hxu2NIZm8S/Q7kNo5pmZfXhHGHmS4MinUainiBC54SCyRnwzL+KZjj8zbsSsw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/basex@5.5.0", "@ethersproject/basex@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.5.0.tgz#e40a53ae6d6b09ab4d977bd037010d4bed21b4d3" @@ -277,6 +331,14 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/properties" "^5.5.0" +"@ethersproject/basex@5.6.1", "@ethersproject/basex@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.1.tgz#badbb2f1d4a6f52ce41c9064f01eab19cc4c5305" + integrity sha512-a52MkVz4vuBXR06nvflPMotld1FJWSj2QT0985v7P/emPZO00PucFAkbcmq2vpVU7Ts7umKiSI6SppiLykVWsA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/bignumber@5.5.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.5.0.tgz#875b143f04a216f4f8b96245bde942d42d279527" @@ -286,6 +348,15 @@ "@ethersproject/logger" "^5.5.0" bn.js "^4.11.9" +"@ethersproject/bignumber@5.6.2", "@ethersproject/bignumber@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.2.tgz#72a0717d6163fab44c47bcc82e0c550ac0315d66" + integrity sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + bn.js "^5.2.1" + "@ethersproject/bytes@5.5.0", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.5.0.tgz#cb11c526de657e7b45d2e0f0246fb3b9d29a601c" @@ -293,6 +364,13 @@ dependencies: "@ethersproject/logger" "^5.5.0" +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" + integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/constants@5.5.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.5.0.tgz#d2a2cd7d94bd1d58377d1d66c4f53c9be4d0a45e" @@ -300,6 +378,13 @@ dependencies: "@ethersproject/bignumber" "^5.5.0" +"@ethersproject/constants@5.6.1", "@ethersproject/constants@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.1.tgz#e2e974cac160dd101cf79fdf879d7d18e8cb1370" + integrity sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/contracts@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.5.0.tgz#b735260d4bd61283a670a82d5275e2a38892c197" @@ -316,6 +401,22 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/transactions" "^5.5.0" +"@ethersproject/contracts@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.6.2.tgz#20b52e69ebc1b74274ff8e3d4e508de971c287bc" + integrity sha512-hguUA57BIKi6WY0kHvZp6PwPlWF87MCeB4B7Z7AbUpTxfFXFdn/3b0GmjZPagIHS+3yhcBJDnuEfU4Xz+Ks/8g== + dependencies: + "@ethersproject/abi" "^5.6.3" + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/hardware-wallets@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/hardware-wallets/-/hardware-wallets-5.5.0.tgz#b4a3bc99a843c3b78b133cdf94485a567ba17b8d" @@ -342,6 +443,20 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" +"@ethersproject/hash@5.6.1", "@ethersproject/hash@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.1.tgz#224572ea4de257f05b4abf8ae58b03a67e99b0f4" + integrity sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/hdnode@5.5.0", "@ethersproject/hdnode@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.5.0.tgz#4a04e28f41c546f7c978528ea1575206a200ddf6" @@ -360,6 +475,24 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/wordlists" "^5.5.0" +"@ethersproject/hdnode@5.6.2", "@ethersproject/hdnode@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.2.tgz#26f3c83a3e8f1b7985c15d1db50dc2903418b2d2" + integrity sha512-tERxW8Ccf9CxW2db3WsN01Qao3wFeRsfYY9TCuhmG0xNpl2IO8wgXU3HtWIZ49gUWPggRy4Yg5axU0ACaEKf1Q== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + "@ethersproject/json-wallets@5.5.0", "@ethersproject/json-wallets@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.5.0.tgz#dd522d4297e15bccc8e1427d247ec8376b60e325" @@ -379,6 +512,25 @@ aes-js "3.0.0" scrypt-js "3.0.1" +"@ethersproject/json-wallets@5.6.1", "@ethersproject/json-wallets@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.1.tgz#3f06ba555c9c0d7da46756a12ac53483fe18dd91" + integrity sha512-KfyJ6Zwz3kGeX25nLihPwZYlDqamO6pfGKNnVMWWfEVVp42lTfCZVXXy5Ie8IZTN0HKwAngpIPi7gk4IJzgmqQ== + dependencies: + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2" "^5.6.1" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + aes-js "3.0.0" + scrypt-js "3.0.1" + "@ethersproject/keccak256@5.5.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.5.0.tgz#e4b1f9d7701da87c564ffe336f86dcee82983492" @@ -387,11 +539,24 @@ "@ethersproject/bytes" "^5.5.0" js-sha3 "0.8.0" +"@ethersproject/keccak256@5.6.1", "@ethersproject/keccak256@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.1.tgz#b867167c9b50ba1b1a92bccdd4f2d6bd168a91cc" + integrity sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + js-sha3 "0.8.0" + "@ethersproject/logger@5.5.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.5.0.tgz#0c2caebeff98e10aefa5aef27d7441c7fd18cf5d" integrity sha512-rIY/6WPm7T8n3qS2vuHTUBPdXHl+rGxWxW5okDfo9J4Z0+gRRZT0msvUdIJkE4/HS29GUMziwGaaKO2bWONBrg== +"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" + integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== + "@ethersproject/networks@5.5.2", "@ethersproject/networks@^5.5.0": version "5.5.2" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.2.tgz#784c8b1283cd2a931114ab428dae1bd00c07630b" @@ -399,6 +564,13 @@ dependencies: "@ethersproject/logger" "^5.5.0" +"@ethersproject/networks@5.6.4", "@ethersproject/networks@^5.6.3": + version "5.6.4" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.4.tgz#51296d8fec59e9627554f5a8a9c7791248c8dc07" + integrity sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/pbkdf2@5.5.0", "@ethersproject/pbkdf2@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.5.0.tgz#e25032cdf02f31505d47afbf9c3e000d95c4a050" @@ -407,6 +579,14 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/sha2" "^5.5.0" +"@ethersproject/pbkdf2@5.6.1", "@ethersproject/pbkdf2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.1.tgz#f462fe320b22c0d6b1d72a9920a3963b09eb82d1" + integrity sha512-k4gRQ+D93zDRPNUfmduNKq065uadC2YjMP/CqwwX5qG6R05f47boq6pLZtV/RnC4NZAYOPH1Cyo54q0c9sshRQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/properties@5.5.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.5.0.tgz#61f00f2bb83376d2071baab02245f92070c59995" @@ -414,6 +594,13 @@ dependencies: "@ethersproject/logger" "^5.5.0" +"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": + version "5.6.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" + integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== + dependencies: + "@ethersproject/logger" "^5.6.0" + "@ethersproject/providers@5.5.3", "@ethersproject/providers@^5.5.3": version "5.5.3" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.3.tgz#56c2b070542ac44eb5de2ed3cf6784acd60a3130" @@ -439,6 +626,32 @@ bech32 "1.1.4" ws "7.4.6" +"@ethersproject/providers@5.6.8", "@ethersproject/providers@^5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + "@ethersproject/random@5.5.1", "@ethersproject/random@^5.5.0": version "5.5.1" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.1.tgz#7cdf38ea93dc0b1ed1d8e480ccdaf3535c555415" @@ -447,6 +660,14 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" +"@ethersproject/random@5.6.1", "@ethersproject/random@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.1.tgz#66915943981bcd3e11bbd43733f5c3ba5a790255" + integrity sha512-/wtPNHwbmng+5yi3fkipA8YBT59DdkGRoC2vWk09Dci/q5DlgnMkhIycjHlavrvrjJBkFjO/ueLyT+aUDfc4lA== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/rlp@5.5.0", "@ethersproject/rlp@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.5.0.tgz#530f4f608f9ca9d4f89c24ab95db58ab56ab99a0" @@ -455,6 +676,14 @@ "@ethersproject/bytes" "^5.5.0" "@ethersproject/logger" "^5.5.0" +"@ethersproject/rlp@5.6.1", "@ethersproject/rlp@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.1.tgz#df8311e6f9f24dcb03d59a2bac457a28a4fe2bd8" + integrity sha512-uYjmcZx+DKlFUk7a5/W9aQVaoEC7+1MOBgNtvNg13+RnuUwT4F0zTovC0tmay5SmRslb29V1B7Y5KCri46WhuQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2@5.5.0", "@ethersproject/sha2@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.5.0.tgz#a40a054c61f98fd9eee99af2c3cc6ff57ec24db7" @@ -464,6 +693,15 @@ "@ethersproject/logger" "^5.5.0" hash.js "1.1.7" +"@ethersproject/sha2@5.6.1", "@ethersproject/sha2@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.1.tgz#211f14d3f5da5301c8972a8827770b6fd3e51656" + integrity sha512-5K2GyqcW7G4Yo3uenHegbXRPDgARpWUiXc6RiF7b6i/HXUoWlb7uCARh7BAHg7/qT/Q5ydofNwiZcim9qpjB6g== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + hash.js "1.1.7" + "@ethersproject/signing-key@5.5.0", "@ethersproject/signing-key@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.5.0.tgz#2aa37169ce7e01e3e80f2c14325f624c29cedbe0" @@ -476,6 +714,18 @@ elliptic "6.5.4" hash.js "1.1.7" +"@ethersproject/signing-key@5.6.2", "@ethersproject/signing-key@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.2.tgz#8a51b111e4d62e5a62aee1da1e088d12de0614a3" + integrity sha512-jVbu0RuP7EFpw82vHcL+GP35+KaNruVAZM90GxgQnGqB6crhBqW/ozBfFvdeImtmb4qPko0uxXjn8l9jpn0cwQ== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + "@ethersproject/solidity@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.5.0.tgz#2662eb3e5da471b85a20531e420054278362f93f" @@ -488,6 +738,18 @@ "@ethersproject/sha2" "^5.5.0" "@ethersproject/strings" "^5.5.0" +"@ethersproject/solidity@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.6.1.tgz#5845e71182c66d32e6ec5eefd041fca091a473e2" + integrity sha512-KWqVLkUUoLBfL1iwdzUVlkNqAUIFMpbbeH0rgCfKmJp0vFtY4AsaN91gHKo9ZZLkC4UOm3cI3BmMV4N53BOq4g== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/strings@5.5.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.5.0.tgz#e6784d00ec6c57710755699003bc747e98c5d549" @@ -497,6 +759,15 @@ "@ethersproject/constants" "^5.5.0" "@ethersproject/logger" "^5.5.0" +"@ethersproject/strings@5.6.1", "@ethersproject/strings@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.1.tgz#dbc1b7f901db822b5cafd4ebf01ca93c373f8952" + integrity sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/transactions@5.5.0", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.5.0.tgz#7e9bf72e97bcdf69db34fe0d59e2f4203c7a2908" @@ -512,6 +783,21 @@ "@ethersproject/rlp" "^5.5.0" "@ethersproject/signing-key" "^5.5.0" +"@ethersproject/transactions@5.6.2", "@ethersproject/transactions@^5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.2.tgz#793a774c01ced9fe7073985bb95a4b4e57a6370b" + integrity sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q== + dependencies: + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/units@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.5.0.tgz#104d02db5b5dc42cc672cc4587bafb87a95ee45e" @@ -521,6 +807,15 @@ "@ethersproject/constants" "^5.5.0" "@ethersproject/logger" "^5.5.0" +"@ethersproject/units@5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.6.1.tgz#ecc590d16d37c8f9ef4e89e2005bda7ddc6a4e6f" + integrity sha512-rEfSEvMQ7obcx3KWD5EWWx77gqv54K6BKiZzKxkQJqtpriVsICrktIQmKl8ReNToPeIYPnFHpXvKpi068YFZXw== + dependencies: + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/wallet@5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.5.0.tgz#322a10527a440ece593980dca6182f17d54eae75" @@ -542,6 +837,27 @@ "@ethersproject/transactions" "^5.5.0" "@ethersproject/wordlists" "^5.5.0" +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + "@ethersproject/web@5.5.1", "@ethersproject/web@^5.5.0", "@ethersproject/web@^5.5.1": version "5.5.1" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.5.1.tgz#cfcc4a074a6936c657878ac58917a61341681316" @@ -553,6 +869,17 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" +"@ethersproject/web@5.6.1", "@ethersproject/web@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.1.tgz#6e2bd3ebadd033e6fe57d072db2b69ad2c9bdf5d" + integrity sha512-/vSyzaQlNXkO1WV+RneYKqCJwualcUdx/Z3gseVovZP0wIlOFcCE1hkRhKBH8ImKbGQbMl9EAAyJFrJu7V0aqA== + dependencies: + "@ethersproject/base64" "^5.6.1" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/wordlists@5.5.0", "@ethersproject/wordlists@^5.5.0": version "5.5.0" resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.5.0.tgz#aac74963aa43e643638e5172353d931b347d584f" @@ -564,6 +891,17 @@ "@ethersproject/properties" "^5.5.0" "@ethersproject/strings" "^5.5.0" +"@ethersproject/wordlists@5.6.1", "@ethersproject/wordlists@^5.6.1": + version "5.6.1" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.1.tgz#1e78e2740a8a21e9e99947e47979d72e130aeda1" + integrity sha512-wiPRgBpNbNwCQFoCr8bcWO8o5I810cqO6mkdtKfLKFlLxeCWcnzDi4Alu8iyNzlhYuS9npCwivMbRWF19dyblw== + dependencies: + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/strings" "^5.6.1" + "@ledgerhq/cryptoassets@^5.27.2": version "5.53.0" resolved "https://registry.yarnpkg.com/@ledgerhq/cryptoassets/-/cryptoassets-5.53.0.tgz#11dcc93211960c6fd6620392e4dd91896aaabe58" @@ -1873,6 +2211,11 @@ bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + body-parser@1.19.2, body-parser@^1.16.0: version "1.19.2" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" @@ -3363,6 +3706,42 @@ ethers@^5.0.1, ethers@^5.0.2, ethers@^5.5.0, ethers@^5.5.2, ethers@^5.5.4: "@ethersproject/web" "5.5.1" "@ethersproject/wordlists" "5.5.0" +ethers@^5.6.8: + version "5.6.9" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.9.tgz#4e12f8dfcb67b88ae7a78a9519b384c23c576a4d" + integrity sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA== + dependencies: + "@ethersproject/abi" "5.6.4" + "@ethersproject/abstract-provider" "5.6.1" + "@ethersproject/abstract-signer" "5.6.2" + "@ethersproject/address" "5.6.1" + "@ethersproject/base64" "5.6.1" + "@ethersproject/basex" "5.6.1" + "@ethersproject/bignumber" "5.6.2" + "@ethersproject/bytes" "5.6.1" + "@ethersproject/constants" "5.6.1" + "@ethersproject/contracts" "5.6.2" + "@ethersproject/hash" "5.6.1" + "@ethersproject/hdnode" "5.6.2" + "@ethersproject/json-wallets" "5.6.1" + "@ethersproject/keccak256" "5.6.1" + "@ethersproject/logger" "5.6.0" + "@ethersproject/networks" "5.6.4" + "@ethersproject/pbkdf2" "5.6.1" + "@ethersproject/properties" "5.6.0" + "@ethersproject/providers" "5.6.8" + "@ethersproject/random" "5.6.1" + "@ethersproject/rlp" "5.6.1" + "@ethersproject/sha2" "5.6.1" + "@ethersproject/signing-key" "5.6.2" + "@ethersproject/solidity" "5.6.1" + "@ethersproject/strings" "5.6.1" + "@ethersproject/transactions" "5.6.2" + "@ethersproject/units" "5.6.1" + "@ethersproject/wallet" "5.6.2" + "@ethersproject/web" "5.6.1" + "@ethersproject/wordlists" "5.6.1" + ethjs-unit@0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" From f5f66d882a0d45e3ce325194344165aaca67b9af Mon Sep 17 00:00:00 2001 From: Ori Pomerantz Date: Mon, 25 Jul 2022 21:32:39 +0000 Subject: [PATCH 3/4] feat(xdom-comm): Changed to SDK 1.3.1 --- cross-dom-comm/foundry/foundry.toml | 2 +- cross-dom-comm/foundry/lib/package.json | 2 +- cross-dom-comm/foundry/lib/yarn.lock | 36 +- cross-dom-comm/foundry/script/Contract.s.sol | 12 - cross-dom-comm/foundry/test/Contract.t.sol | 12 - cross-dom-comm/hardhat/package.json | 2 +- cross-dom-comm/hardhat/yarn.lock | 3070 +++++++----------- 7 files changed, 1161 insertions(+), 1975 deletions(-) delete mode 100644 cross-dom-comm/foundry/script/Contract.s.sol delete mode 100644 cross-dom-comm/foundry/test/Contract.t.sol diff --git a/cross-dom-comm/foundry/foundry.toml b/cross-dom-comm/foundry/foundry.toml index d7dd144b..e6810b2b 100644 --- a/cross-dom-comm/foundry/foundry.toml +++ b/cross-dom-comm/foundry/foundry.toml @@ -1,4 +1,4 @@ -[default] +[profile.default] src = 'src' out = 'out' libs = ['lib'] diff --git a/cross-dom-comm/foundry/lib/package.json b/cross-dom-comm/foundry/lib/package.json index 5784e810..dc59e3bb 100644 --- a/cross-dom-comm/foundry/lib/package.json +++ b/cross-dom-comm/foundry/lib/package.json @@ -1,5 +1,5 @@ { "dependencies": { - "@eth-optimism/sdk": "^1.3.0" + "@eth-optimism/sdk": "^1.3.1" } } diff --git a/cross-dom-comm/foundry/lib/yarn.lock b/cross-dom-comm/foundry/lib/yarn.lock index 3ea677b9..6f623a27 100644 --- a/cross-dom-comm/foundry/lib/yarn.lock +++ b/cross-dom-comm/foundry/lib/yarn.lock @@ -2,19 +2,19 @@ # yarn lockfile v1 -"@eth-optimism/contracts@0.5.30": - version "0.5.30" - resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.30.tgz#855c3c0a47e7bab54c91459592312699947b71a0" - integrity sha512-mmB/PeK7ADcQVqLzT7NaDG9tpuPnv7WAF9fcqM8GLIGuVCcyPSWR3TE/MN0fAnQ2Vyffd84+YDjyBLmL1gKepA== +"@eth-optimism/contracts@0.5.31": + version "0.5.31" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.31.tgz#2f5a9be37b4c309909d8206c877710e9769af858" + integrity sha512-I07EeyBBWwSsB6I/GodOLRydDtefWx4sdL3wCvNLSoCIUl2hUyisMmtTojOBXeT6vvfbiYkWc8jZlfXdbyJ7fA== dependencies: - "@eth-optimism/core-utils" "0.9.1" + "@eth-optimism/core-utils" "0.9.2" "@ethersproject/abstract-provider" "^5.6.1" "@ethersproject/abstract-signer" "^5.6.2" -"@eth-optimism/core-utils@0.9.1": - version "0.9.1" - resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.1.tgz#6d011e0c272b5373828c239120b6e9fb0cf961c5" - integrity sha512-RhSoRCVGAPh2U9z9dEH6OBmva5vhdc49qncTFW+MV4dVQ963/vf4lYZEAnu2SOdy5F7EV4z0KkNMj0OlpEHxtw== +"@eth-optimism/core-utils@0.9.2": + version "0.9.2" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.2.tgz#f31241de997ec5dc8a4095d044d12f0558bb9f32" + integrity sha512-wUP75gZu1rZ+taXwUtcw00qCUbDkcn16JcIIK/j7XnzgaEnyXExn+ivz3rivFbr5Ool4c5M+iVzVF99sPZrCPA== dependencies: "@ethersproject/abstract-provider" "^5.6.1" "@ethersproject/providers" "^5.6.8" @@ -23,13 +23,13 @@ chai "^4.3.4" ethers "^5.6.8" -"@eth-optimism/sdk@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.0.tgz#15bb12fae78fa582d7b16913d10b198070ad029f" - integrity sha512-th8yj0ukqJOFereY63aF2foCSWtTuaKhkoE9QdRBClH75rp0m65ksoDdOkpWgo8jQOj5jYXHRUjrJEzexdyHaw== +"@eth-optimism/sdk@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.1.tgz#4b970074cbdcda5dcfaf0ed8cd71e0957d7d170e" + integrity sha512-MGz6hAIR5EAElJyyX6d5b6GOIy66n5Ex1tTI845+oTFx/ExXOt6XQ6RRHsDOFgHWv1vMtsYgxolx+5fhSfE+cg== dependencies: - "@eth-optimism/contracts" "0.5.30" - "@eth-optimism/core-utils" "0.9.1" + "@eth-optimism/contracts" "0.5.31" + "@eth-optimism/core-utils" "0.9.2" lodash "^4.17.21" merkletreejs "^0.2.27" rlp "^2.2.7" @@ -383,9 +383,9 @@ "@types/node" "*" "@types/node@*": - version "18.0.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.0.6.tgz#0ba49ac517ad69abe7a1508bc9b3a5483df9d5d7" - integrity sha512-/xUq6H2aQm261exT6iZTMifUySEt4GR5KX8eYyY+C4MSNPqSh9oNIP7tz2GLKTlFaiBbgZNxffoR3CVRG+cljw== + version "18.6.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.6.1.tgz#828e4785ccca13f44e2fb6852ae0ef11e3e20ba5" + integrity sha512-z+2vB6yDt1fNwKOeGbckpmirO+VBDuQqecXkgeIqDlaOtmKn6hPR/viQ8cxCfqLU4fTlvM3+YjM367TukWdxpg== "@types/pbkdf2@^3.0.0": version "3.1.0" diff --git a/cross-dom-comm/foundry/script/Contract.s.sol b/cross-dom-comm/foundry/script/Contract.s.sol deleted file mode 100644 index f5cb3933..00000000 --- a/cross-dom-comm/foundry/script/Contract.s.sol +++ /dev/null @@ -1,12 +0,0 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.13; - -import "forge-std/Script.sol"; - -contract ContractScript is Script { - function setUp() public {} - - function run() public { - vm.broadcast(); - } -} diff --git a/cross-dom-comm/foundry/test/Contract.t.sol b/cross-dom-comm/foundry/test/Contract.t.sol deleted file mode 100644 index bfaaad95..00000000 --- a/cross-dom-comm/foundry/test/Contract.t.sol +++ /dev/null @@ -1,12 +0,0 @@ -// SPDX-License-Identifier: UNLICENSED -pragma solidity ^0.8.13; - -import "forge-std/Test.sol"; - -contract ContractTest is Test { - function setUp() public {} - - function testExample() public { - assertTrue(true); - } -} diff --git a/cross-dom-comm/hardhat/package.json b/cross-dom-comm/hardhat/package.json index f067005d..f6096090 100644 --- a/cross-dom-comm/hardhat/package.json +++ b/cross-dom-comm/hardhat/package.json @@ -10,7 +10,7 @@ }, "dependencies": { "@eth-optimism/contracts": "^0.5.14", - "@eth-optimism/sdk": "^1.3.0", + "@eth-optimism/sdk": "^1.3.1", "dotenv": "^16.0.0" } } diff --git a/cross-dom-comm/hardhat/yarn.lock b/cross-dom-comm/hardhat/yarn.lock index 4cb88417..1357ec7d 100644 --- a/cross-dom-comm/hardhat/yarn.lock +++ b/cross-dom-comm/hardhat/yarn.lock @@ -18,41 +18,19 @@ resolved "https://registry.yarnpkg.com/@ensdomains/resolver/-/resolver-0.2.4.tgz#c10fe28bf5efbf49bff4666d909aed0265efbc89" integrity sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA== -"@eth-optimism/contracts@0.5.30": - version "0.5.30" - resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.30.tgz#855c3c0a47e7bab54c91459592312699947b71a0" - integrity sha512-mmB/PeK7ADcQVqLzT7NaDG9tpuPnv7WAF9fcqM8GLIGuVCcyPSWR3TE/MN0fAnQ2Vyffd84+YDjyBLmL1gKepA== +"@eth-optimism/contracts@0.5.31", "@eth-optimism/contracts@^0.5.14": + version "0.5.31" + resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.31.tgz#2f5a9be37b4c309909d8206c877710e9769af858" + integrity sha512-I07EeyBBWwSsB6I/GodOLRydDtefWx4sdL3wCvNLSoCIUl2hUyisMmtTojOBXeT6vvfbiYkWc8jZlfXdbyJ7fA== dependencies: - "@eth-optimism/core-utils" "0.9.1" + "@eth-optimism/core-utils" "0.9.2" "@ethersproject/abstract-provider" "^5.6.1" "@ethersproject/abstract-signer" "^5.6.2" -"@eth-optimism/contracts@^0.5.14": - version "0.5.15" - resolved "https://registry.yarnpkg.com/@eth-optimism/contracts/-/contracts-0.5.15.tgz#71f538172acc1bab0894ead13468a7063b078adf" - integrity sha512-UP3YnxuYebZS4Py2KMTE5AbkuEu/Yk/EtX9AOm0xLCxh+htet2oQ/GahwleLIq8mW2pFtchzc4zARYUJal49ug== - dependencies: - "@eth-optimism/core-utils" "0.8.0" - "@ethersproject/abstract-provider" "^5.5.1" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/hardware-wallets" "^5.5.0" - -"@eth-optimism/core-utils@0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.8.0.tgz#d2ab90aaea0a7df13157bf3f461c9a8d1893f2ac" - integrity sha512-ms/fhyvPyxU4sBNHQ8L4DcLzNes2ioZnPYeZQ41q40ciYkRZEfTXmXxtQOTVSRDPBz8PtaHMLRnxVOiwcP2ncg== - dependencies: - "@ethersproject/abstract-provider" "^5.5.1" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/providers" "^5.5.3" - "@ethersproject/web" "^5.5.1" - chai "^4.3.4" - ethers "^5.5.4" - -"@eth-optimism/core-utils@0.9.1": - version "0.9.1" - resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.1.tgz#6d011e0c272b5373828c239120b6e9fb0cf961c5" - integrity sha512-RhSoRCVGAPh2U9z9dEH6OBmva5vhdc49qncTFW+MV4dVQ963/vf4lYZEAnu2SOdy5F7EV4z0KkNMj0OlpEHxtw== +"@eth-optimism/core-utils@0.9.2": + version "0.9.2" + resolved "https://registry.yarnpkg.com/@eth-optimism/core-utils/-/core-utils-0.9.2.tgz#f31241de997ec5dc8a4095d044d12f0558bb9f32" + integrity sha512-wUP75gZu1rZ+taXwUtcw00qCUbDkcn16JcIIK/j7XnzgaEnyXExn+ivz3rivFbr5Ool4c5M+iVzVF99sPZrCPA== dependencies: "@ethersproject/abstract-provider" "^5.6.1" "@ethersproject/providers" "^5.6.8" @@ -61,29 +39,29 @@ chai "^4.3.4" ethers "^5.6.8" -"@eth-optimism/sdk@^1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.0.tgz#15bb12fae78fa582d7b16913d10b198070ad029f" - integrity sha512-th8yj0ukqJOFereY63aF2foCSWtTuaKhkoE9QdRBClH75rp0m65ksoDdOkpWgo8jQOj5jYXHRUjrJEzexdyHaw== +"@eth-optimism/sdk@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@eth-optimism/sdk/-/sdk-1.3.1.tgz#4b970074cbdcda5dcfaf0ed8cd71e0957d7d170e" + integrity sha512-MGz6hAIR5EAElJyyX6d5b6GOIy66n5Ex1tTI845+oTFx/ExXOt6XQ6RRHsDOFgHWv1vMtsYgxolx+5fhSfE+cg== dependencies: - "@eth-optimism/contracts" "0.5.30" - "@eth-optimism/core-utils" "0.9.1" + "@eth-optimism/contracts" "0.5.31" + "@eth-optimism/core-utils" "0.9.2" lodash "^4.17.21" merkletreejs "^0.2.27" rlp "^2.2.7" -"@ethereum-waffle/chai@^3.4.0": - version "3.4.3" - resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-3.4.3.tgz#a2fbaa583f02164c6a5c755df488f45482f6f382" - integrity sha512-yu1DCuyuEvoQFP9PCbHqiycGxwKUrZ24yc/DsjkBlLAQ3OSLhbmlbMiz804YFymWCNsFmobEATp6kBuUDexo7w== +"@ethereum-waffle/chai@^3.4.4": + version "3.4.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/chai/-/chai-3.4.4.tgz#16c4cc877df31b035d6d92486dfdf983df9138ff" + integrity sha512-/K8czydBtXXkcM9X6q29EqEkc5dN3oYenyH2a9hF7rGAApAJUpH8QBtojxOY/xQ2up5W332jqgxwp0yPiYug1g== dependencies: - "@ethereum-waffle/provider" "^3.4.1" + "@ethereum-waffle/provider" "^3.4.4" ethers "^5.5.2" -"@ethereum-waffle/compiler@^3.4.0": - version "3.4.0" - resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-3.4.0.tgz#68917321212563544913de33e408327745cb1284" - integrity sha512-a2wxGOoB9F1QFRE+Om7Cz2wn+pxM/o7a0a6cbwhaS2lECJgFzeN9xEkVrKahRkF4gEfXGcuORg4msP0Asxezlw== +"@ethereum-waffle/compiler@^3.4.4": + version "3.4.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/compiler/-/compiler-3.4.4.tgz#d568ee0f6029e68b5c645506079fbf67d0dfcf19" + integrity sha512-RUK3axJ8IkD5xpWjWoJgyHclOeEzDLQFga6gKpeGxiS/zBu+HB0W2FvsrrLalTFIaPw/CGYACRBSIxqiCqwqTQ== dependencies: "@resolver-engine/imports" "^0.3.3" "@resolver-engine/imports-fs" "^0.3.3" @@ -97,65 +75,65 @@ ts-generator "^0.1.1" typechain "^3.0.0" -"@ethereum-waffle/ens@^3.3.1": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-3.3.1.tgz#0f1b7ac4fc156641c18accd60f8ce256e2c475cf" - integrity sha512-xSjNWnT2Iwii3J3XGqD+F5yLEOzQzLHNLGfI5KIXdtQ4FHgReW/AMGRgPPLi+n+SP08oEQWJ3sEKrvbFlwJuaA== +"@ethereum-waffle/ens@^3.4.4": + version "3.4.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/ens/-/ens-3.4.4.tgz#db97ea2c9decbb70b9205d53de2ccbd6f3182ba1" + integrity sha512-0m4NdwWxliy3heBYva1Wr4WbJKLnwXizmy5FfSSr5PMbjI7SIGCdCB59U7/ZzY773/hY3bLnzLwvG5mggVjJWg== dependencies: "@ensdomains/ens" "^0.4.4" "@ensdomains/resolver" "^0.2.4" ethers "^5.5.2" -"@ethereum-waffle/mock-contract@^3.3.0": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-3.3.1.tgz#dfd53a6e184f5e4c5e1119a8aef67f2d88914497" - integrity sha512-h9yChF7IkpJLODg/o9/jlwKwTcXJLSEIq3gewgwUJuBHnhPkJGekcZvsTbximYc+e42QUZrDUATSuTCIryeCEA== +"@ethereum-waffle/mock-contract@^3.4.4": + version "3.4.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/mock-contract/-/mock-contract-3.4.4.tgz#fc6ffa18813546f4950a69f5892d4dd54b2c685a" + integrity sha512-Mp0iB2YNWYGUV+VMl5tjPsaXKbKo8MDH9wSJ702l9EBjdxFf/vBvnMBAC1Fub1lLtmD0JHtp1pq+mWzg/xlLnA== dependencies: "@ethersproject/abi" "^5.5.0" ethers "^5.5.2" -"@ethereum-waffle/provider@^3.4.0", "@ethereum-waffle/provider@^3.4.1": - version "3.4.1" - resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-3.4.1.tgz#d59f5741d5ee96a7d5501f455709b38d81c8be2f" - integrity sha512-5iDte7c9g9N1rTRE/P4npwk1Hus/wA2yH850X6sP30mr1IrwSG9NKn6/2SOQkAVJnh9jqyLVg2X9xCODWL8G4A== +"@ethereum-waffle/provider@^3.4.4": + version "3.4.4" + resolved "https://registry.yarnpkg.com/@ethereum-waffle/provider/-/provider-3.4.4.tgz#398fc1f7eb91cc2df7d011272eacba8af0c7fffb" + integrity sha512-GK8oKJAM8+PKy2nK08yDgl4A80mFuI8zBkE0C9GqTRYQqvuxIyXoLmJ5NZU9lIwyWVv5/KsoA11BgAv2jXE82g== dependencies: - "@ethereum-waffle/ens" "^3.3.1" + "@ethereum-waffle/ens" "^3.4.4" ethers "^5.5.2" ganache-core "^2.13.2" patch-package "^6.2.2" postinstall-postinstall "^2.1.0" -"@ethereumjs/block@^3.5.0", "@ethereumjs/block@^3.6.0", "@ethereumjs/block@^3.6.1": - version "3.6.1" - resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-3.6.1.tgz#50574d3e993ae247dcfe2abbdb91d2a4a22accb9" - integrity sha512-o5d/zpGl4SdVfdTfrsq9ZgYMXddc0ucKMiFW5OphBCX+ep4xzYnSjboFcZXT2V/tcSBr84VrKWWp21CGVb3DGw== +"@ethereumjs/block@^3.5.0", "@ethereumjs/block@^3.6.2", "@ethereumjs/block@^3.6.3": + version "3.6.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/block/-/block-3.6.3.tgz#d96cbd7af38b92ebb3424223dbf773f5ccd27f84" + integrity sha512-CegDeryc2DVKnDkg5COQrE0bJfw/p0v3GBk2W5/Dj5dOVfEmb50Ux0GLnSPypooLnfqjwFaorGuT9FokWB3GRg== dependencies: - "@ethereumjs/common" "^2.6.1" - "@ethereumjs/tx" "^3.5.0" - ethereumjs-util "^7.1.4" - merkle-patricia-tree "^4.2.3" + "@ethereumjs/common" "^2.6.5" + "@ethereumjs/tx" "^3.5.2" + ethereumjs-util "^7.1.5" + merkle-patricia-tree "^4.2.4" -"@ethereumjs/blockchain@^5.5.0", "@ethereumjs/blockchain@^5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-5.5.1.tgz#60f1f50592c06cc47e1704800b88b7d32f609742" - integrity sha512-JS2jeKxl3tlaa5oXrZ8mGoVBCz6YqsGG350XVNtHAtNZXKk7pU3rH4xzF2ru42fksMMqzFLzKh9l4EQzmNWDqA== +"@ethereumjs/blockchain@^5.5.2", "@ethereumjs/blockchain@^5.5.3": + version "5.5.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/blockchain/-/blockchain-5.5.3.tgz#aa49a6a04789da6b66b5bcbb0d0b98efc369f640" + integrity sha512-bi0wuNJ1gw4ByNCV56H0Z4Q7D+SxUbwyG12Wxzbvqc89PXLRNR20LBcSUZRKpN0+YCPo6m0XZL/JLio3B52LTw== dependencies: - "@ethereumjs/block" "^3.6.0" - "@ethereumjs/common" "^2.6.0" + "@ethereumjs/block" "^3.6.2" + "@ethereumjs/common" "^2.6.4" "@ethereumjs/ethash" "^1.1.0" - debug "^2.2.0" - ethereumjs-util "^7.1.3" + debug "^4.3.3" + ethereumjs-util "^7.1.5" level-mem "^5.0.1" lru-cache "^5.1.1" semaphore-async-await "^1.5.1" -"@ethereumjs/common@^2.6.0", "@ethereumjs/common@^2.6.1", "@ethereumjs/common@^2.6.2": - version "2.6.2" - resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.2.tgz#eb006c9329c75c80f634f340dc1719a5258244df" - integrity sha512-vDwye5v0SVeuDky4MtKsu+ogkH2oFUV8pBKzH/eNBzT8oI91pKa8WyzDuYuxOQsgNgv5R34LfFDh2aaw3H4HbQ== +"@ethereumjs/common@^2.6.4", "@ethereumjs/common@^2.6.5": + version "2.6.5" + resolved "https://registry.yarnpkg.com/@ethereumjs/common/-/common-2.6.5.tgz#0a75a22a046272579d91919cb12d84f2756e8d30" + integrity sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA== dependencies: crc-32 "^1.2.0" - ethereumjs-util "^7.1.4" + ethereumjs-util "^7.1.5" "@ethereumjs/ethash@^1.1.0": version "1.1.0" @@ -168,30 +146,30 @@ ethereumjs-util "^7.1.1" miller-rabin "^4.0.0" -"@ethereumjs/tx@^3.4.0", "@ethereumjs/tx@^3.5.0": - version "3.5.0" - resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.0.tgz#783b0aeb08518b9991b23f5155763bbaf930a037" - integrity sha512-/+ZNbnJhQhXC83Xuvy6I9k4jT5sXiV0tMR9C+AzSSpcCV64+NB8dTE1m3x98RYMqb8+TLYWA+HML4F5lfXTlJw== +"@ethereumjs/tx@^3.5.1", "@ethereumjs/tx@^3.5.2": + version "3.5.2" + resolved "https://registry.yarnpkg.com/@ethereumjs/tx/-/tx-3.5.2.tgz#197b9b6299582ad84f9527ca961466fce2296c1c" + integrity sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw== dependencies: - "@ethereumjs/common" "^2.6.1" - ethereumjs-util "^7.1.4" + "@ethereumjs/common" "^2.6.4" + ethereumjs-util "^7.1.5" -"@ethereumjs/vm@^5.6.0": - version "5.7.1" - resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.7.1.tgz#3bf757fbad0081838ccb4f22003cd73319ab3616" - integrity sha512-NiFm5FMaeDGZ9ojBL+Y9Y/xhW6S4Fgez+zPBM402T5kLsfeAR9mrRVckYhvkGVJ6FMwsY820CLjYP5OVwMjLTg== +"@ethereumjs/vm@^5.9.0": + version "5.9.3" + resolved "https://registry.yarnpkg.com/@ethereumjs/vm/-/vm-5.9.3.tgz#6d69202e4c132a4a1e1628ac246e92062e230823" + integrity sha512-Ha04TeF8goEglr8eL7hkkYyjhzdZS0PsoRURzYlTF6I0VVId5KjKb0N7MrA8GMgheN+UeTncfTgYx52D/WhEmg== dependencies: - "@ethereumjs/block" "^3.6.1" - "@ethereumjs/blockchain" "^5.5.1" - "@ethereumjs/common" "^2.6.2" - "@ethereumjs/tx" "^3.5.0" + "@ethereumjs/block" "^3.6.3" + "@ethereumjs/blockchain" "^5.5.3" + "@ethereumjs/common" "^2.6.5" + "@ethereumjs/tx" "^3.5.2" async-eventemitter "^0.2.4" core-js-pure "^3.0.1" debug "^4.3.3" - ethereumjs-util "^7.1.4" + ethereumjs-util "^7.1.5" functional-red-black-tree "^1.0.1" mcl-wasm "^0.7.1" - merkle-patricia-tree "^4.2.3" + merkle-patricia-tree "^4.2.4" rustbn.js "~0.2.0" "@ethersproject/abi@5.0.0-beta.153": @@ -209,22 +187,7 @@ "@ethersproject/properties" ">=5.0.0-beta.131" "@ethersproject/strings" ">=5.0.0-beta.130" -"@ethersproject/abi@5.5.0", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.5.0.tgz#fb52820e22e50b854ff15ce1647cc508d6660613" - integrity sha512-loW7I4AohP5KycATvc0MgujU6JyCHPqHdeoo9z3Nr9xEiNioxa65ccdm1+fsoJhkuhdRtfcL8cfyGamz2AxZ5w== - dependencies: - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/abi@5.6.4", "@ethersproject/abi@^5.6.3": +"@ethersproject/abi@5.6.4", "@ethersproject/abi@^5.1.2", "@ethersproject/abi@^5.5.0", "@ethersproject/abi@^5.6.3": version "5.6.4" resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.4.tgz#f6e01b6ed391a505932698ecc0d9e7a99ee60362" integrity sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg== @@ -239,19 +202,6 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.1" -"@ethersproject/abstract-provider@5.5.1", "@ethersproject/abstract-provider@^5.5.0", "@ethersproject/abstract-provider@^5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.5.1.tgz#2f1f6e8a3ab7d378d8ad0b5718460f85649710c5" - integrity sha512-m+MA/ful6eKbxpr99xUYeRvLkfnlqzrF8SZ46d/xFB1A7ZVknYc/sXJG0RcufF52Qn2jeFj1hhcoQ7IXjNKUqg== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/networks" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/web" "^5.5.0" - "@ethersproject/abstract-provider@5.6.1", "@ethersproject/abstract-provider@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.1.tgz#02ddce150785caf0c77fe036a0ebfcee61878c59" @@ -265,17 +215,6 @@ "@ethersproject/transactions" "^5.6.2" "@ethersproject/web" "^5.6.1" -"@ethersproject/abstract-signer@5.5.0", "@ethersproject/abstract-signer@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.5.0.tgz#590ff6693370c60ae376bf1c7ada59eb2a8dd08d" - integrity sha512-lj//7r250MXVLKI7sVarXAbZXbv9P50lgmJQGr2/is82EwEb8r7HrxsmMqAjTsztMYy7ohrIhGMIml+Gx4D3mA== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/abstract-signer@5.6.2", "@ethersproject/abstract-signer@^5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.2.tgz#491f07fc2cbd5da258f46ec539664713950b0b33" @@ -287,18 +226,7 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/properties" "^5.6.0" -"@ethersproject/address@5.5.0", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.5.0.tgz#bcc6f576a553f21f3dd7ba17248f81b473c9c78f" - integrity sha512-l4Nj0eWlTUh6ro5IbPTgbpT4wRbdH5l8CQf7icF7sb/SI3Nhd9Y9HzhonTSTi6CefI0necIw7LJqQPopPLZyWw== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - -"@ethersproject/address@5.6.1", "@ethersproject/address@^5.6.1": +"@ethersproject/address@5.6.1", "@ethersproject/address@>=5.0.0-beta.128", "@ethersproject/address@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.1.tgz#ab57818d9aefee919c5721d28cd31fd95eff413d" integrity sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q== @@ -309,13 +237,6 @@ "@ethersproject/logger" "^5.6.0" "@ethersproject/rlp" "^5.6.1" -"@ethersproject/base64@5.5.0", "@ethersproject/base64@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.5.0.tgz#881e8544e47ed976930836986e5eb8fab259c090" - integrity sha512-tdayUKhU1ljrlHzEWbStXazDpsx4eg1dBXUSI6+mHlYklOXoXF6lZvw8tnD6oVaWfnMxAgRSKROg3cVKtCcppA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/base64@5.6.1", "@ethersproject/base64@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.1.tgz#2c40d8a0310c9d1606c2c37ae3092634b41d87cb" @@ -323,14 +244,6 @@ dependencies: "@ethersproject/bytes" "^5.6.1" -"@ethersproject/basex@5.5.0", "@ethersproject/basex@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.5.0.tgz#e40a53ae6d6b09ab4d977bd037010d4bed21b4d3" - integrity sha512-ZIodwhHpVJ0Y3hUCfUucmxKsWQA5TMnavp5j/UOuDdzZWzJlRmuOjcTMIGgHCYuZmHt36BfiSyQPSRskPxbfaQ== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/basex@5.6.1", "@ethersproject/basex@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.6.1.tgz#badbb2f1d4a6f52ce41c9064f01eab19cc4c5305" @@ -339,16 +252,7 @@ "@ethersproject/bytes" "^5.6.1" "@ethersproject/properties" "^5.6.0" -"@ethersproject/bignumber@5.5.0", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.5.0.tgz#875b143f04a216f4f8b96245bde942d42d279527" - integrity sha512-6Xytlwvy6Rn3U3gKEc1vP7nR92frHkv6wtVr95LFR3jREXiCPzdWxKQ1cx4JGQBXxcguAwjA8murlYN2TSiEbg== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - bn.js "^4.11.9" - -"@ethersproject/bignumber@5.6.2", "@ethersproject/bignumber@^5.6.2": +"@ethersproject/bignumber@5.6.2", "@ethersproject/bignumber@>=5.0.0-beta.130", "@ethersproject/bignumber@^5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.2.tgz#72a0717d6163fab44c47bcc82e0c550ac0315d66" integrity sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw== @@ -357,50 +261,20 @@ "@ethersproject/logger" "^5.6.0" bn.js "^5.2.1" -"@ethersproject/bytes@5.5.0", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.5.0.tgz#cb11c526de657e7b45d2e0f0246fb3b9d29a601c" - integrity sha512-ABvc7BHWhZU9PNM/tANm/Qx4ostPGadAuQzWTr3doklZOhDlmcBqclrQe/ZXUIj3K8wC28oYeuRa+A37tX9kog== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@^5.6.1": +"@ethersproject/bytes@5.6.1", "@ethersproject/bytes@>=5.0.0-beta.129", "@ethersproject/bytes@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7" integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/constants@5.5.0", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.5.0.tgz#d2a2cd7d94bd1d58377d1d66c4f53c9be4d0a45e" - integrity sha512-2MsRRVChkvMWR+GyMGY4N1sAX9Mt3J9KykCsgUFd/1mwS0UH1qw+Bv9k1UJb3X3YJYFco9H20pjSlOIfCG5HYQ== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - -"@ethersproject/constants@5.6.1", "@ethersproject/constants@^5.6.1": +"@ethersproject/constants@5.6.1", "@ethersproject/constants@>=5.0.0-beta.128", "@ethersproject/constants@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.1.tgz#e2e974cac160dd101cf79fdf879d7d18e8cb1370" integrity sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg== dependencies: "@ethersproject/bignumber" "^5.6.2" -"@ethersproject/contracts@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.5.0.tgz#b735260d4bd61283a670a82d5275e2a38892c197" - integrity sha512-2viY7NzyvJkh+Ug17v7g3/IJC8HqZBDcOjYARZLdzRxrfGlRgmYgl6xPRKVbEzy1dWKw/iv7chDcS83pg6cLxg== - dependencies: - "@ethersproject/abi" "^5.5.0" - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/contracts@5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.6.2.tgz#20b52e69ebc1b74274ff8e3d4e508de971c287bc" @@ -417,33 +291,7 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/transactions" "^5.6.2" -"@ethersproject/hardware-wallets@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hardware-wallets/-/hardware-wallets-5.5.0.tgz#b4a3bc99a843c3b78b133cdf94485a567ba17b8d" - integrity sha512-oZh/Ps/ohxFQdKVeMw8wpw0xZpL+ndsRlQwNE3Eki2vLeH2to14de6fNrgETZtAbAhzglH6ES9Nlx1+UuqvvYg== - dependencies: - "@ledgerhq/hw-app-eth" "5.27.2" - "@ledgerhq/hw-transport" "5.26.0" - "@ledgerhq/hw-transport-u2f" "5.26.0" - ethers "^5.5.0" - optionalDependencies: - "@ledgerhq/hw-transport-node-hid" "5.26.0" - -"@ethersproject/hash@5.5.0", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.5.0.tgz#7cee76d08f88d1873574c849e0207dcb32380cc9" - integrity sha512-dnGVpK1WtBjmnp3mUT0PlU2MpapnwWI0PibldQEq1408tQBAbZpPidkWoVVuNMOl/lISO3+4hXZWCL3YV7qzfg== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - -"@ethersproject/hash@5.6.1", "@ethersproject/hash@^5.6.1": +"@ethersproject/hash@5.6.1", "@ethersproject/hash@>=5.0.0-beta.128", "@ethersproject/hash@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.1.tgz#224572ea4de257f05b4abf8ae58b03a67e99b0f4" integrity sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA== @@ -457,24 +305,6 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.1" -"@ethersproject/hdnode@5.5.0", "@ethersproject/hdnode@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.5.0.tgz#4a04e28f41c546f7c978528ea1575206a200ddf6" - integrity sha512-mcSOo9zeUg1L0CoJH7zmxwUG5ggQHU1UrRf8jyTYy6HxdZV+r0PBoL1bxr+JHIPXRzS6u/UW4mEn43y0tmyF8Q== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/basex" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/pbkdf2" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/wordlists" "^5.5.0" - "@ethersproject/hdnode@5.6.2", "@ethersproject/hdnode@^5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.6.2.tgz#26f3c83a3e8f1b7985c15d1db50dc2903418b2d2" @@ -493,25 +323,6 @@ "@ethersproject/transactions" "^5.6.2" "@ethersproject/wordlists" "^5.6.1" -"@ethersproject/json-wallets@5.5.0", "@ethersproject/json-wallets@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.5.0.tgz#dd522d4297e15bccc8e1427d247ec8376b60e325" - integrity sha512-9lA21XQnCdcS72xlBn1jfQdj2A1VUxZzOzi9UkNdnokNKke/9Ya2xA9aIK1SC3PQyBDLt4C+dfps7ULpkvKikQ== - dependencies: - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hdnode" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/pbkdf2" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - aes-js "3.0.0" - scrypt-js "3.0.1" - "@ethersproject/json-wallets@5.6.1", "@ethersproject/json-wallets@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.6.1.tgz#3f06ba555c9c0d7da46756a12ac53483fe18dd91" @@ -531,15 +342,7 @@ aes-js "3.0.0" scrypt-js "3.0.1" -"@ethersproject/keccak256@5.5.0", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.5.0.tgz#e4b1f9d7701da87c564ffe336f86dcee82983492" - integrity sha512-5VoFCTjo2rYbBe1l2f4mccaRFN/4VQEYFwwn04aJV2h7qf4ZvI2wFxUE1XOX+snbwCLRzIeikOqtAoPwMza9kg== - dependencies: - "@ethersproject/bytes" "^5.5.0" - js-sha3 "0.8.0" - -"@ethersproject/keccak256@5.6.1", "@ethersproject/keccak256@^5.6.1": +"@ethersproject/keccak256@5.6.1", "@ethersproject/keccak256@>=5.0.0-beta.127", "@ethersproject/keccak256@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.1.tgz#b867167c9b50ba1b1a92bccdd4f2d6bd168a91cc" integrity sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA== @@ -547,23 +350,11 @@ "@ethersproject/bytes" "^5.6.1" js-sha3 "0.8.0" -"@ethersproject/logger@5.5.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.5.0.tgz#0c2caebeff98e10aefa5aef27d7441c7fd18cf5d" - integrity sha512-rIY/6WPm7T8n3qS2vuHTUBPdXHl+rGxWxW5okDfo9J4Z0+gRRZT0msvUdIJkE4/HS29GUMziwGaaKO2bWONBrg== - -"@ethersproject/logger@5.6.0", "@ethersproject/logger@^5.6.0": +"@ethersproject/logger@5.6.0", "@ethersproject/logger@>=5.0.0-beta.129", "@ethersproject/logger@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a" integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg== -"@ethersproject/networks@5.5.2", "@ethersproject/networks@^5.5.0": - version "5.5.2" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.5.2.tgz#784c8b1283cd2a931114ab428dae1bd00c07630b" - integrity sha512-NEqPxbGBfy6O3x4ZTISb90SjEDkWYDUbEeIFhJly0F7sZjoQMnj5KYzMSkMkLKZ+1fGpx00EDpHQCy6PrDupkQ== - dependencies: - "@ethersproject/logger" "^5.5.0" - "@ethersproject/networks@5.6.4", "@ethersproject/networks@^5.6.3": version "5.6.4" resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.4.tgz#51296d8fec59e9627554f5a8a9c7791248c8dc07" @@ -571,14 +362,6 @@ dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/pbkdf2@5.5.0", "@ethersproject/pbkdf2@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.5.0.tgz#e25032cdf02f31505d47afbf9c3e000d95c4a050" - integrity sha512-SaDvQFvXPnz1QGpzr6/HToLifftSXGoXrbpZ6BvoZhmx4bNLHrxDe8MZisuecyOziP1aVEwzC2Hasj+86TgWVg== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/pbkdf2@5.6.1", "@ethersproject/pbkdf2@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.6.1.tgz#f462fe320b22c0d6b1d72a9920a3963b09eb82d1" @@ -587,45 +370,13 @@ "@ethersproject/bytes" "^5.6.1" "@ethersproject/sha2" "^5.6.1" -"@ethersproject/properties@5.5.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.5.0.tgz#61f00f2bb83376d2071baab02245f92070c59995" - integrity sha512-l3zRQg3JkD8EL3CPjNK5g7kMx4qSwiR60/uk5IVjd3oq1MZR5qUg40CNOoEJoX5wc3DyY5bt9EbMk86C7x0DNA== - dependencies: - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/properties@5.6.0", "@ethersproject/properties@^5.6.0": +"@ethersproject/properties@5.6.0", "@ethersproject/properties@>=5.0.0-beta.131", "@ethersproject/properties@^5.6.0": version "5.6.0" resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04" integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg== dependencies: "@ethersproject/logger" "^5.6.0" -"@ethersproject/providers@5.5.3", "@ethersproject/providers@^5.5.3": - version "5.5.3" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.5.3.tgz#56c2b070542ac44eb5de2ed3cf6784acd60a3130" - integrity sha512-ZHXxXXXWHuwCQKrgdpIkbzMNJMvs+9YWemanwp1fA7XZEv7QlilseysPvQe0D7Q7DlkJX/w/bGA1MdgK2TbGvA== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/basex" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/networks" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/web" "^5.5.0" - bech32 "1.1.4" - ws "7.4.6" - "@ethersproject/providers@5.6.8", "@ethersproject/providers@^5.6.8": version "5.6.8" resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" @@ -652,14 +403,6 @@ bech32 "1.1.4" ws "7.4.6" -"@ethersproject/random@5.5.1", "@ethersproject/random@^5.5.0": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.5.1.tgz#7cdf38ea93dc0b1ed1d8e480ccdaf3535c555415" - integrity sha512-YaU2dQ7DuhL5Au7KbcQLHxcRHfgyNgvFV4sQOo0HrtW3Zkrc9ctWNz8wXQ4uCSfSDsqX2vcjhroxU5RQRV0nqA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/random@5.6.1", "@ethersproject/random@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.6.1.tgz#66915943981bcd3e11bbd43733f5c3ba5a790255" @@ -668,14 +411,6 @@ "@ethersproject/bytes" "^5.6.1" "@ethersproject/logger" "^5.6.0" -"@ethersproject/rlp@5.5.0", "@ethersproject/rlp@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.5.0.tgz#530f4f608f9ca9d4f89c24ab95db58ab56ab99a0" - integrity sha512-hLv8XaQ8PTI9g2RHoQGf/WSxBfTB/NudRacbzdxmst5VHAqd1sMibWG7SENzT5Dj3yZ3kJYx+WiRYEcQTAkcYA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/rlp@5.6.1", "@ethersproject/rlp@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.1.tgz#df8311e6f9f24dcb03d59a2bac457a28a4fe2bd8" @@ -684,15 +419,6 @@ "@ethersproject/bytes" "^5.6.1" "@ethersproject/logger" "^5.6.0" -"@ethersproject/sha2@5.5.0", "@ethersproject/sha2@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.5.0.tgz#a40a054c61f98fd9eee99af2c3cc6ff57ec24db7" - integrity sha512-B5UBoglbCiHamRVPLA110J+2uqsifpZaTmid2/7W5rbtYVz6gus6/hSDieIU/6gaKIDcOj12WnOdiymEUHIAOA== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - hash.js "1.1.7" - "@ethersproject/sha2@5.6.1", "@ethersproject/sha2@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.6.1.tgz#211f14d3f5da5301c8972a8827770b6fd3e51656" @@ -702,18 +428,6 @@ "@ethersproject/logger" "^5.6.0" hash.js "1.1.7" -"@ethersproject/signing-key@5.5.0", "@ethersproject/signing-key@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.5.0.tgz#2aa37169ce7e01e3e80f2c14325f624c29cedbe0" - integrity sha512-5VmseH7qjtNmDdZBswavhotYbWB0bOwKIlOTSlX14rKn5c11QmJwGt4GHeo7NrL/Ycl7uo9AHvEqs5xZgFBTng== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - bn.js "^4.11.9" - elliptic "6.5.4" - hash.js "1.1.7" - "@ethersproject/signing-key@5.6.2", "@ethersproject/signing-key@^5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.2.tgz#8a51b111e4d62e5a62aee1da1e088d12de0614a3" @@ -726,18 +440,6 @@ elliptic "6.5.4" hash.js "1.1.7" -"@ethersproject/solidity@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.5.0.tgz#2662eb3e5da471b85a20531e420054278362f93f" - integrity sha512-9NgZs9LhGMj6aCtHXhtmFQ4AN4sth5HuFXVvAQtzmm0jpSCNOTGtrHZJAeYTh7MBjRR8brylWZxBZR9zDStXbw== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/sha2" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/solidity@5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.6.1.tgz#5845e71182c66d32e6ec5eefd041fca091a473e2" @@ -750,16 +452,7 @@ "@ethersproject/sha2" "^5.6.1" "@ethersproject/strings" "^5.6.1" -"@ethersproject/strings@5.5.0", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.5.0.tgz#e6784d00ec6c57710755699003bc747e98c5d549" - integrity sha512-9fy3TtF5LrX/wTrBaT8FGE6TDJyVjOvXynXJz5MT5azq+E6D92zuKNx7i29sWW2FjVOaWjAsiZ1ZWznuduTIIQ== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - -"@ethersproject/strings@5.6.1", "@ethersproject/strings@^5.6.1": +"@ethersproject/strings@5.6.1", "@ethersproject/strings@>=5.0.0-beta.130", "@ethersproject/strings@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.1.tgz#dbc1b7f901db822b5cafd4ebf01ca93c373f8952" integrity sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw== @@ -768,22 +461,7 @@ "@ethersproject/constants" "^5.6.1" "@ethersproject/logger" "^5.6.0" -"@ethersproject/transactions@5.5.0", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.5.0.tgz#7e9bf72e97bcdf69db34fe0d59e2f4203c7a2908" - integrity sha512-9RZYSKX26KfzEd/1eqvv8pLauCKzDTub0Ko4LfIgaERvRuwyaNV78mJs7cpIgZaDl6RJui4o49lHwwCM0526zA== - dependencies: - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/rlp" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - -"@ethersproject/transactions@5.6.2", "@ethersproject/transactions@^5.6.2": +"@ethersproject/transactions@5.6.2", "@ethersproject/transactions@^5.0.0-beta.135", "@ethersproject/transactions@^5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.2.tgz#793a774c01ced9fe7073985bb95a4b4e57a6370b" integrity sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q== @@ -798,15 +476,6 @@ "@ethersproject/rlp" "^5.6.1" "@ethersproject/signing-key" "^5.6.2" -"@ethersproject/units@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.5.0.tgz#104d02db5b5dc42cc672cc4587bafb87a95ee45e" - integrity sha512-7+DpjiZk4v6wrikj+TCyWWa9dXLNU73tSTa7n0TSJDxkYbV3Yf1eRh9ToMLlZtuctNYu9RDNNy2USq3AdqSbag== - dependencies: - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/constants" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/units@5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.6.1.tgz#ecc590d16d37c8f9ef4e89e2005bda7ddc6a4e6f" @@ -816,27 +485,6 @@ "@ethersproject/constants" "^5.6.1" "@ethersproject/logger" "^5.6.0" -"@ethersproject/wallet@5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.5.0.tgz#322a10527a440ece593980dca6182f17d54eae75" - integrity sha512-Mlu13hIctSYaZmUOo7r2PhNSd8eaMPVXe1wxrz4w4FCE4tDYBywDH+bAR1Xz2ADyXGwqYMwstzTrtUVIsKDO0Q== - dependencies: - "@ethersproject/abstract-provider" "^5.5.0" - "@ethersproject/abstract-signer" "^5.5.0" - "@ethersproject/address" "^5.5.0" - "@ethersproject/bignumber" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/hdnode" "^5.5.0" - "@ethersproject/json-wallets" "^5.5.0" - "@ethersproject/keccak256" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/random" "^5.5.0" - "@ethersproject/signing-key" "^5.5.0" - "@ethersproject/transactions" "^5.5.0" - "@ethersproject/wordlists" "^5.5.0" - "@ethersproject/wallet@5.6.2": version "5.6.2" resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" @@ -858,17 +506,6 @@ "@ethersproject/transactions" "^5.6.2" "@ethersproject/wordlists" "^5.6.1" -"@ethersproject/web@5.5.1", "@ethersproject/web@^5.5.0", "@ethersproject/web@^5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.5.1.tgz#cfcc4a074a6936c657878ac58917a61341681316" - integrity sha512-olvLvc1CB12sREc1ROPSHTdFCdvMh0J5GSJYiQg2D0hdD4QmJDy8QYDb1CvoqD/bF1c++aeKv2sR5uduuG9dQg== - dependencies: - "@ethersproject/base64" "^5.5.0" - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/web@5.6.1", "@ethersproject/web@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.1.tgz#6e2bd3ebadd033e6fe57d072db2b69ad2c9bdf5d" @@ -880,17 +517,6 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.1" -"@ethersproject/wordlists@5.5.0", "@ethersproject/wordlists@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.5.0.tgz#aac74963aa43e643638e5172353d931b347d584f" - integrity sha512-bL0UTReWDiaQJJYOC9sh/XcRu/9i2jMrzf8VLRmPKx58ckSlOJiohODkECCO50dtLZHcGU6MLXQ4OOrgBwP77Q== - dependencies: - "@ethersproject/bytes" "^5.5.0" - "@ethersproject/hash" "^5.5.0" - "@ethersproject/logger" "^5.5.0" - "@ethersproject/properties" "^5.5.0" - "@ethersproject/strings" "^5.5.0" - "@ethersproject/wordlists@5.6.1", "@ethersproject/wordlists@^5.6.1": version "5.6.1" resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.6.1.tgz#1e78e2740a8a21e9e99947e47979d72e130aeda1" @@ -902,101 +528,10 @@ "@ethersproject/properties" "^5.6.0" "@ethersproject/strings" "^5.6.1" -"@ledgerhq/cryptoassets@^5.27.2": - version "5.53.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/cryptoassets/-/cryptoassets-5.53.0.tgz#11dcc93211960c6fd6620392e4dd91896aaabe58" - integrity sha512-M3ibc3LRuHid5UtL7FI3IC6nMEppvly98QHFoSa7lJU0HDzQxY6zHec/SPM4uuJUC8sXoGVAiRJDkgny54damw== - dependencies: - invariant "2" - -"@ledgerhq/devices@^5.26.0", "@ledgerhq/devices@^5.51.1": - version "5.51.1" - resolved "https://registry.yarnpkg.com/@ledgerhq/devices/-/devices-5.51.1.tgz#d741a4a5d8f17c2f9d282fd27147e6fe1999edb7" - integrity sha512-4w+P0VkbjzEXC7kv8T1GJ/9AVaP9I6uasMZ/JcdwZBS3qwvKo5A5z9uGhP5c7TvItzcmPb44b5Mw2kT+WjUuAA== - dependencies: - "@ledgerhq/errors" "^5.50.0" - "@ledgerhq/logs" "^5.50.0" - rxjs "6" - semver "^7.3.5" - -"@ledgerhq/errors@^5.26.0", "@ledgerhq/errors@^5.50.0": - version "5.50.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/errors/-/errors-5.50.0.tgz#e3a6834cb8c19346efca214c1af84ed28e69dad9" - integrity sha512-gu6aJ/BHuRlpU7kgVpy2vcYk6atjB4iauP2ymF7Gk0ez0Y/6VSMVSJvubeEQN+IV60+OBK0JgeIZG7OiHaw8ow== - -"@ledgerhq/hw-app-eth@5.27.2": - version "5.27.2" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-app-eth/-/hw-app-eth-5.27.2.tgz#65a2ed613a69340e0cd69c942147455ec513d006" - integrity sha512-llNdrE894cCN8j6yxJEUniciyLVcLmu5N0UmIJLOObztG+5rOF4bX54h4SreTWK+E10Z0CzHSeyE5Lz/tVcqqQ== - dependencies: - "@ledgerhq/cryptoassets" "^5.27.2" - "@ledgerhq/errors" "^5.26.0" - "@ledgerhq/hw-transport" "^5.26.0" - bignumber.js "^9.0.1" - rlp "^2.2.6" - -"@ledgerhq/hw-transport-node-hid-noevents@^5.26.0": - version "5.51.1" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid-noevents/-/hw-transport-node-hid-noevents-5.51.1.tgz#71f37f812e448178ad0bcc2258982150d211c1ab" - integrity sha512-9wFf1L8ZQplF7XOY2sQGEeOhpmBRzrn+4X43kghZ7FBDoltrcK+s/D7S+7ffg3j2OySyP6vIIIgloXylao5Scg== - dependencies: - "@ledgerhq/devices" "^5.51.1" - "@ledgerhq/errors" "^5.50.0" - "@ledgerhq/hw-transport" "^5.51.1" - "@ledgerhq/logs" "^5.50.0" - node-hid "2.1.1" - -"@ledgerhq/hw-transport-node-hid@5.26.0": - version "5.26.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-node-hid/-/hw-transport-node-hid-5.26.0.tgz#69bc4f8067cdd9c09ef4aed0e0b3c58328936e4b" - integrity sha512-qhaefZVZatJ6UuK8Wb6WSFNOLWc2mxcv/xgsfKi5HJCIr4bPF/ecIeN+7fRcEaycxj4XykY6Z4A7zDVulfFH4w== - dependencies: - "@ledgerhq/devices" "^5.26.0" - "@ledgerhq/errors" "^5.26.0" - "@ledgerhq/hw-transport" "^5.26.0" - "@ledgerhq/hw-transport-node-hid-noevents" "^5.26.0" - "@ledgerhq/logs" "^5.26.0" - lodash "^4.17.20" - node-hid "1.3.0" - usb "^1.6.3" - -"@ledgerhq/hw-transport-u2f@5.26.0": - version "5.26.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-u2f/-/hw-transport-u2f-5.26.0.tgz#b7d9d13193eb82b051fd7a838cd652372f907ec5" - integrity sha512-QTxP1Rsh+WZ184LUOelYVLeaQl3++V3I2jFik+l9JZtakwEHjD0XqOT750xpYNL/vfHsy31Wlz+oicdxGzFk+w== - dependencies: - "@ledgerhq/errors" "^5.26.0" - "@ledgerhq/hw-transport" "^5.26.0" - "@ledgerhq/logs" "^5.26.0" - u2f-api "0.2.7" - -"@ledgerhq/hw-transport@5.26.0": - version "5.26.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-5.26.0.tgz#bfedc3d48400ad2fe48278d9444344b72aa9d0fe" - integrity sha512-NFeJOJmyEfAX8uuIBTpocWHcz630sqPcXbu864Q+OCBm4EK5UOKV1h/pX7e0xgNIKY8zhJ/O4p4cIZp9tnXLHQ== - dependencies: - "@ledgerhq/devices" "^5.26.0" - "@ledgerhq/errors" "^5.26.0" - events "^3.2.0" - -"@ledgerhq/hw-transport@^5.26.0", "@ledgerhq/hw-transport@^5.51.1": - version "5.51.1" - resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-5.51.1.tgz#8dd14a8e58cbee4df0c29eaeef983a79f5f22578" - integrity sha512-6wDYdbWrw9VwHIcoDnqWBaDFyviyjZWv6H9vz9Vyhe4Qd7TIFmbTl/eWs6hZvtZBza9K8y7zD8ChHwRI4s9tSw== - dependencies: - "@ledgerhq/devices" "^5.51.1" - "@ledgerhq/errors" "^5.50.0" - events "^3.3.0" - -"@ledgerhq/logs@^5.26.0", "@ledgerhq/logs@^5.50.0": - version "5.50.0" - resolved "https://registry.yarnpkg.com/@ledgerhq/logs/-/logs-5.50.0.tgz#29c6419e8379d496ab6d0426eadf3c4d100cd186" - integrity sha512-swKHYCOZUGyVt4ge0u8a7AwNcA//h4nx5wIi0sruGye1IJ5Cva0GyK9L2/WdX+kWVTKp92ZiEo1df31lrWGPgA== - "@metamask/eth-sig-util@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.0.tgz#11553ba06de0d1352332c1bde28c8edd00e0dcf6" - integrity sha512-LczOjjxY4A7XYloxzyxJIHONELmUxVZncpOLoClpEcTiebiVdM46KRPYXGuULro9oNNR2xdVx3yoKiQjdfWmoA== + version "4.0.1" + resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz#3ad61f6ea9ad73ba5b19db780d40d9aae5157088" + integrity sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ== dependencies: ethereumjs-abi "^0.6.8" ethereumjs-util "^6.2.1" @@ -1004,15 +539,25 @@ tweetnacl "^1.0.3" tweetnacl-util "^0.15.1" +"@noble/hashes@1.1.2", "@noble/hashes@~1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.1.2.tgz#e9e035b9b166ca0af657a7848eb2718f0f22f183" + integrity sha512-KYRCASVTv6aeUi1tsF8/vpyR7zpfs3FUzy2Jqm+MU+LmUKhQ0y2FpfwqkCcxSg2ua4GALJd8k2R76WxwZGbQpA== + +"@noble/secp256k1@1.6.3", "@noble/secp256k1@~1.6.0": + version "1.6.3" + resolved "https://registry.yarnpkg.com/@noble/secp256k1/-/secp256k1-1.6.3.tgz#7eed12d9f4404b416999d0c87686836c4c5c9b94" + integrity sha512-T04e4iTurVy7I8Sw4+c5OSN9/RkPlo1uKxAomtxQNLq8j1uPAqnsqG1bqvY3Jv7c13gyr6dui0zmh/I3+f/JaQ== + "@nomiclabs/hardhat-ethers@^2.0.5": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.0.5.tgz#131b0da1b71680d5a01569f916ae878229d326d3" - integrity sha512-A2gZAGB6kUvLx+kzM92HKuUF33F1FSe90L0TmkXkT2Hh0OKRpvWZURUSU2nghD2yC4DzfEZ3DftfeHGvZ2JTUw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-ethers/-/hardhat-ethers-2.1.0.tgz#9b7dc94d669ad9dc286b94f6f2f1513118c7027b" + integrity sha512-vlW90etB3675QWG7tMrHaDoTa7ymMB7irM4DAQ98g8zJoe9YqEggeDnbO6v5b+BLth/ty4vN6Ko/kaqRN1krHw== "@nomiclabs/hardhat-waffle@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.2.tgz#6030aa6fd9ea05327bf79d1107356af906d8b1e4" - integrity sha512-dnhry6Bj15O8L3pBksTuXfr4RAUIf+BxRxWJXiu+ioSawcQaOcNF4gfMxn6ik0auk3zrsAJLA6m9vqe87d4xvg== + version "2.0.3" + resolved "https://registry.yarnpkg.com/@nomiclabs/hardhat-waffle/-/hardhat-waffle-2.0.3.tgz#9c538a09c5ed89f68f5fd2dc3f78f16ed1d6e0b1" + integrity sha512-049PHSnI1CZq6+XTbrMbMv5NaL7cednTfPenx02k3cEh8wBMLa6ys++dBETJa6JjfwgA9nBhhHQ173LJv6k2Pg== dependencies: "@types/sinon-chai" "^3.2.3" "@types/web3" "1.0.19" @@ -1054,6 +599,28 @@ path-browserify "^1.0.0" url "^0.11.0" +"@scure/base@~1.1.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.1.tgz#ebb651ee52ff84f420097055f4bf46cfba403938" + integrity sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA== + +"@scure/bip32@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.1.0.tgz#dea45875e7fbc720c2b4560325f1cf5d2246d95b" + integrity sha512-ftTW3kKX54YXLCxH6BB7oEEoJfoE2pIgw7MINKAs5PsS6nqKPuKk1haTF/EuHmYqG330t5GSrdmtRuHaY1a62Q== + dependencies: + "@noble/hashes" "~1.1.1" + "@noble/secp256k1" "~1.6.0" + "@scure/base" "~1.1.0" + +"@scure/bip39@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.1.0.tgz#92f11d095bae025f166bef3defcc5bf4945d419a" + integrity sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w== + dependencies: + "@noble/hashes" "~1.1.1" + "@scure/base" "~1.1.0" + "@sentry/core@5.30.0": version "5.30.0" resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.30.0.tgz#6b203664f69e75106ee8b5a2fe1d717379b331f3" @@ -1127,10 +694,10 @@ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== -"@solidity-parser/parser@^0.14.0": - version "0.14.1" - resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.1.tgz#179afb29f4e295a77cc141151f26b3848abc3c46" - integrity sha512-eLjj2L6AuQjBB6s/ibwCAc0DwrR5Ge+ys+wgWo+bviU7fV2nTMQhU63CGaDKXg9iTmMxwhkyoggdIR7ZGRfMgw== +"@solidity-parser/parser@^0.14.2": + version "0.14.3" + resolved "https://registry.yarnpkg.com/@solidity-parser/parser/-/parser-0.14.3.tgz#0d627427b35a40d8521aaa933cc3df7d07bfa36f" + integrity sha512-29g2SZ29HtsqA58pLCtopI1P/cPy5/UAzlcAXO6T/CNJimG6yA8kx4NaseMyJULiC+TEs02Y9/yeHzClqoA0hw== dependencies: antlr4ts "^0.5.0-alpha.4" @@ -1168,9 +735,9 @@ "@types/node" "*" "@types/chai@*": - version "4.3.0" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.0.tgz#23509ebc1fa32f1b4d50d6a66c4032d5b8eaabdc" - integrity sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw== + version "4.3.1" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.3.1.tgz#e2c6e73e0bdeb2521d00756d099218e9f5d90a04" + integrity sha512-/zPMqDkzSZ8t3VtxOa4KPq7uzzW978M9Tvh+j7GHKuo6k6GTLxPJ4J5gE5cjfJ26pnXst0N5Hax8Sr0T2Mi9zQ== "@types/level-errors@*": version "3.0.0" @@ -1199,22 +766,22 @@ "@types/node" "*" "@types/node-fetch@^2.5.5": - version "2.6.1" - resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.1.tgz#8f127c50481db65886800ef496f20bbf15518975" - integrity sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA== + version "2.6.2" + resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.2.tgz#d1a9c5fd049d9415dce61571557104dec3ec81da" + integrity sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A== dependencies: "@types/node" "*" form-data "^3.0.0" "@types/node@*": - version "17.0.21" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.21.tgz#864b987c0c68d07b4345845c3e63b75edd143644" - integrity sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ== + version "18.6.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.6.1.tgz#828e4785ccca13f44e2fb6852ae0ef11e3e20ba5" + integrity sha512-z+2vB6yDt1fNwKOeGbckpmirO+VBDuQqecXkgeIqDlaOtmKn6hPR/viQ8cxCfqLU4fTlvM3+YjM367TukWdxpg== "@types/node@^12.12.6": - version "12.20.46" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.46.tgz#7e49dee4c54fd19584e6a9e0da5f3dc2e9136bc7" - integrity sha512-cPjLXj8d6anFPzFvOPxS3fvly3Shm5nTfl6g8X5smexixbuGUf7hfr21J5tX9JW+UPStp/5P5R8qrKL5IyVJ+A== + version "12.20.55" + resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" + integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== "@types/pbkdf2@^3.0.0": version "3.1.0" @@ -1224,9 +791,9 @@ "@types/node" "*" "@types/prettier@^2.1.1": - version "2.4.4" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" - integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA== + version "2.6.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.6.3.tgz#68ada76827b0010d0db071f739314fa429943d0a" + integrity sha512-ymZk3LEC/fsut+/Q5qejp6R9O1rMxz3XaRHDV6kX8MrGAhOSPqVARbDi+EZvInBpw+BnCX3TD240byVkOfQsHg== "@types/resolve@^0.0.8": version "0.0.8" @@ -1251,16 +818,16 @@ "@types/sinon" "*" "@types/sinon@*": - version "10.0.11" - resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.11.tgz#8245827b05d3fc57a6601bd35aee1f7ad330fc42" - integrity sha512-dmZsHlBsKUtBpHriNjlK0ndlvEh8dcb9uV9Afsbt89QIyydpC7NcR+nWlAhASfy3GHnxTl4FX/aKE7XZUt/B4g== + version "10.0.13" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.13.tgz#60a7a87a70d9372d0b7b38cc03e825f46981fb83" + integrity sha512-UVjDqJblVNQYvVNUsj0PuYYw0ELRmgt1Nt5Vk0pT5f16ROGfcKJY8o1HVuMOJOpD727RrGB9EGvoaTQE5tgxZQ== dependencies: "@types/sinonjs__fake-timers" "*" "@types/sinonjs__fake-timers@*": - version "8.1.1" - resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz#b49c2c70150141a15e0fa7e79cf1f92a72934ce3" - integrity sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g== + version "8.1.2" + resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz#bf2e02a3dbd4aecaf95942ecd99b7402e03fad5e" + integrity sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA== "@types/underscore@*": version "1.11.4" @@ -1275,6 +842,11 @@ "@types/bn.js" "*" "@types/underscore" "*" +"@ungap/promise-all-settled@1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz#aa58042711d6e3275dd37dc597e5d31e8c290a44" + integrity sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q== + "@yarnpkg/lockfile@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" @@ -1353,7 +925,7 @@ adm-zip@^0.4.16: aes-js@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" - integrity sha1-4h3xCtbCBTKVvLuNq0Cwnb6ofk0= + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== aes-js@^3.1.1: version "3.1.2" @@ -1367,6 +939,14 @@ agent-base@6: dependencies: debug "4" +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + ajv@^6.12.3: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -1377,16 +957,16 @@ ajv@^6.12.3: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ansi-colors@3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" - integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw== - -ansi-colors@^4.1.1: +ansi-colors@4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== +ansi-colors@^4.1.1: + version "4.1.3" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" + integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== + ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -1397,17 +977,7 @@ ansi-escapes@^4.3.0: ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" - integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^5.0.1: version "5.0.1" @@ -1417,21 +987,28 @@ ansi-regex@^5.0.1: ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== -ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== dependencies: color-convert "^1.9.0" +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + antlr4ts@^0.5.0-alpha.4: version "0.5.0-alpha.4" resolved "https://registry.yarnpkg.com/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz#71702865a87478ed0b40c0709f422cf14d51652a" integrity sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ== -anymatch@~3.1.1, anymatch@~3.1.2: +anymatch@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== @@ -1439,30 +1016,15 @@ anymatch@~3.1.1, anymatch@~3.1.2: normalize-path "^3.0.0" picomatch "^2.0.4" -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== - -are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== arr-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-flatten@^1.1.0: version "1.1.0" @@ -1472,12 +1034,12 @@ arr-flatten@^1.1.0: arr-union@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== array-back@^1.0.3, array-back@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/array-back/-/array-back-1.0.4.tgz#644ba7f095f7ffcf7c43b5f0dc39d3c1f03c063b" - integrity sha1-ZEun8JX3/898Q7Xw3DnTwfA8Bjs= + integrity sha512-1WxbZvrmyhkNoeYcizokbmh5oiOCIfyvGtcqbK3Ls1v1fKcquzxnQSceOx6tzq7jmai2kFLWIpGND2cLhH6TPw== dependencies: typical "^2.6.0" @@ -1491,12 +1053,23 @@ array-back@^2.0.0: array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +array.prototype.reduce@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.4.tgz#8167e80089f78bff70a99e20bd4201d4663b0a6f" + integrity sha512-WnM+AjG/DvLRLo4DDl+r+SvCzYtD2Jd9oeBYMcEaI7t3fFrHY9M53/wdLcTvmZNQ70IU6Htj0emFkZ5TS+lrdw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.2" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" asn1.js@^5.2.0: version "5.4.1" @@ -1518,7 +1091,7 @@ asn1@~0.2.3: assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== assertion-error@^1.1.0: version "1.1.0" @@ -1528,7 +1101,7 @@ assertion-error@^1.1.0: assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== async-eventemitter@^0.2.2, async-eventemitter@^0.2.4: version "0.2.4" @@ -1552,19 +1125,19 @@ async@2.6.2: async@^1.4.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" - integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + integrity sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w== async@^2.0.1, async@^2.1.2, async@^2.4.0, async@^2.5.0, async@^2.6.1: - version "2.6.3" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== + version "2.6.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" + integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== dependencies: lodash "^4.17.14" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== atob@^2.1.2: version "2.1.2" @@ -1574,7 +1147,7 @@ atob@^2.1.2: aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== aws4@^1.8.0: version "1.11.0" @@ -1584,7 +1157,7 @@ aws4@^1.8.0: babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= + integrity sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g== dependencies: chalk "^1.1.3" esutils "^2.0.2" @@ -1632,7 +1205,7 @@ babel-generator@^6.26.0: babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - integrity sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= + integrity sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q== dependencies: babel-helper-explode-assignable-expression "^6.24.1" babel-runtime "^6.22.0" @@ -1641,7 +1214,7 @@ babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: babel-helper-call-delegate@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - integrity sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= + integrity sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ== dependencies: babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" @@ -1651,7 +1224,7 @@ babel-helper-call-delegate@^6.24.1: babel-helper-define-map@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - integrity sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= + integrity sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA== dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.26.0" @@ -1661,7 +1234,7 @@ babel-helper-define-map@^6.24.1: babel-helper-explode-assignable-expression@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - integrity sha1-8luCz33BBDPFX3BZLVdGQArCLKo= + integrity sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ== dependencies: babel-runtime "^6.22.0" babel-traverse "^6.24.1" @@ -1670,7 +1243,7 @@ babel-helper-explode-assignable-expression@^6.24.1: babel-helper-function-name@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - integrity sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= + integrity sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q== dependencies: babel-helper-get-function-arity "^6.24.1" babel-runtime "^6.22.0" @@ -1681,7 +1254,7 @@ babel-helper-function-name@^6.24.1: babel-helper-get-function-arity@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - integrity sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= + integrity sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -1689,7 +1262,7 @@ babel-helper-get-function-arity@^6.24.1: babel-helper-hoist-variables@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - integrity sha1-HssnaJydJVE+rbyZFKc/VAi+enY= + integrity sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -1697,7 +1270,7 @@ babel-helper-hoist-variables@^6.24.1: babel-helper-optimise-call-expression@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - integrity sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= + integrity sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -1705,7 +1278,7 @@ babel-helper-optimise-call-expression@^6.24.1: babel-helper-regex@^6.24.1: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - integrity sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI= + integrity sha512-VlPiWmqmGJp0x0oK27Out1D+71nVVCTSdlbhIVoaBAj2lUgrNjBCRR9+llO4lTSb2O4r7PJg+RobRkhBrf6ofg== dependencies: babel-runtime "^6.26.0" babel-types "^6.26.0" @@ -1714,7 +1287,7 @@ babel-helper-regex@^6.24.1: babel-helper-remap-async-to-generator@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - integrity sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= + integrity sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg== dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.22.0" @@ -1725,7 +1298,7 @@ babel-helper-remap-async-to-generator@^6.24.1: babel-helper-replace-supers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - integrity sha1-v22/5Dk40XNpohPKiov3S2qQqxo= + integrity sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw== dependencies: babel-helper-optimise-call-expression "^6.24.1" babel-messages "^6.23.0" @@ -1737,7 +1310,7 @@ babel-helper-replace-supers@^6.24.1: babel-helpers@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= + integrity sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ== dependencies: babel-runtime "^6.22.0" babel-template "^6.24.1" @@ -1745,36 +1318,36 @@ babel-helpers@^6.24.1: babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= + integrity sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w== dependencies: babel-runtime "^6.22.0" babel-plugin-check-es2015-constants@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - integrity sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= + integrity sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA== dependencies: babel-runtime "^6.22.0" babel-plugin-syntax-async-functions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - integrity sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= + integrity sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw== babel-plugin-syntax-exponentiation-operator@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= + integrity sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ== babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - integrity sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= + integrity sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ== babel-plugin-transform-async-to-generator@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - integrity sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= + integrity sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw== dependencies: babel-helper-remap-async-to-generator "^6.24.1" babel-plugin-syntax-async-functions "^6.8.0" @@ -1783,21 +1356,21 @@ babel-plugin-transform-async-to-generator@^6.22.0: babel-plugin-transform-es2015-arrow-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - integrity sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= + integrity sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - integrity sha1-u8UbSflk1wy42OC5ToICRs46YUE= + integrity sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoping@^6.23.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - integrity sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= + integrity sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw== dependencies: babel-runtime "^6.26.0" babel-template "^6.26.0" @@ -1808,7 +1381,7 @@ babel-plugin-transform-es2015-block-scoping@^6.23.0: babel-plugin-transform-es2015-classes@^6.23.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - integrity sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= + integrity sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag== dependencies: babel-helper-define-map "^6.24.1" babel-helper-function-name "^6.24.1" @@ -1823,7 +1396,7 @@ babel-plugin-transform-es2015-classes@^6.23.0: babel-plugin-transform-es2015-computed-properties@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - integrity sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM= + integrity sha512-C/uAv4ktFP/Hmh01gMTvYvICrKze0XVX9f2PdIXuriCSvUmV9j+u+BB9f5fJK3+878yMK6dkdcq+Ymr9mrcLzw== dependencies: babel-runtime "^6.22.0" babel-template "^6.24.1" @@ -1831,14 +1404,14 @@ babel-plugin-transform-es2015-computed-properties@^6.22.0: babel-plugin-transform-es2015-destructuring@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - integrity sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= + integrity sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-duplicate-keys@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - integrity sha1-c+s9MQypaePvnskcU3QabxV2Qj4= + integrity sha512-ossocTuPOssfxO2h+Z3/Ea1Vo1wWx31Uqy9vIiJusOP4TbF7tPs9U0sJ9pX9OJPf4lXRGj5+6Gkl/HHKiAP5ug== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -1846,14 +1419,14 @@ babel-plugin-transform-es2015-duplicate-keys@^6.22.0: babel-plugin-transform-es2015-for-of@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - integrity sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= + integrity sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-function-name@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - integrity sha1-g0yJhTvDaxrw86TF26qU/Y6sqos= + integrity sha512-iFp5KIcorf11iBqu/y/a7DK3MN5di3pNCzto61FqCNnUX4qeBwcV1SLqe10oXNnCaxBUImX3SckX2/o1nsrTcg== dependencies: babel-helper-function-name "^6.24.1" babel-runtime "^6.22.0" @@ -1862,14 +1435,14 @@ babel-plugin-transform-es2015-function-name@^6.22.0: babel-plugin-transform-es2015-literals@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - integrity sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= + integrity sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - integrity sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= + integrity sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA== dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.24.1" babel-runtime "^6.22.0" @@ -1888,7 +1461,7 @@ babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-e babel-plugin-transform-es2015-modules-systemjs@^6.23.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - integrity sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= + integrity sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg== dependencies: babel-helper-hoist-variables "^6.24.1" babel-runtime "^6.22.0" @@ -1897,7 +1470,7 @@ babel-plugin-transform-es2015-modules-systemjs@^6.23.0: babel-plugin-transform-es2015-modules-umd@^6.23.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - integrity sha1-rJl+YoXNGO1hdq22B9YCNErThGg= + integrity sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw== dependencies: babel-plugin-transform-es2015-modules-amd "^6.24.1" babel-runtime "^6.22.0" @@ -1906,7 +1479,7 @@ babel-plugin-transform-es2015-modules-umd@^6.23.0: babel-plugin-transform-es2015-object-super@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - integrity sha1-JM72muIcuDp/hgPa0CH1cusnj40= + integrity sha512-8G5hpZMecb53vpD3mjs64NhI1au24TAmokQ4B+TBFBjN9cVoGoOvotdrMMRmHvVZUEvqGUPWL514woru1ChZMA== dependencies: babel-helper-replace-supers "^6.24.1" babel-runtime "^6.22.0" @@ -1914,7 +1487,7 @@ babel-plugin-transform-es2015-object-super@^6.22.0: babel-plugin-transform-es2015-parameters@^6.23.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - integrity sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= + integrity sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ== dependencies: babel-helper-call-delegate "^6.24.1" babel-helper-get-function-arity "^6.24.1" @@ -1926,7 +1499,7 @@ babel-plugin-transform-es2015-parameters@^6.23.0: babel-plugin-transform-es2015-shorthand-properties@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - integrity sha1-JPh11nIch2YbvZmkYi5R8U3jiqA= + integrity sha512-mDdocSfUVm1/7Jw/FIRNw9vPrBQNePy6wZJlR8HAUBLybNp1w/6lr6zZ2pjMShee65t/ybR5pT8ulkLzD1xwiw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -1934,14 +1507,14 @@ babel-plugin-transform-es2015-shorthand-properties@^6.22.0: babel-plugin-transform-es2015-spread@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - integrity sha1-1taKmfia7cRTbIGlQujdnxdG+NE= + integrity sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-sticky-regex@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - integrity sha1-AMHNsaynERLN8M9hJsLta0V8zbw= + integrity sha512-CYP359ADryTo3pCsH0oxRo/0yn6UsEZLqYohHmvLQdfS9xkf+MbCzE3/Kolw9OYIY4ZMilH25z/5CbQbwDD+lQ== dependencies: babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" @@ -1950,21 +1523,21 @@ babel-plugin-transform-es2015-sticky-regex@^6.22.0: babel-plugin-transform-es2015-template-literals@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - integrity sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= + integrity sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-typeof-symbol@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - integrity sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= + integrity sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw== dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-unicode-regex@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - integrity sha1-04sS9C6nMj9yk4fxinxa4frrNek= + integrity sha512-v61Dbbihf5XxnYjtBN04B/JBvsScY37R1cZT5r9permN1cp+b70DY3Ib3fIkgn1DI9U3tGgBJZVD8p/mE/4JbQ== dependencies: babel-helper-regex "^6.24.1" babel-runtime "^6.22.0" @@ -1973,7 +1546,7 @@ babel-plugin-transform-es2015-unicode-regex@^6.22.0: babel-plugin-transform-exponentiation-operator@^6.22.0: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - integrity sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= + integrity sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ== dependencies: babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" babel-plugin-syntax-exponentiation-operator "^6.8.0" @@ -1982,14 +1555,14 @@ babel-plugin-transform-exponentiation-operator@^6.22.0: babel-plugin-transform-regenerator@^6.22.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - integrity sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8= + integrity sha512-LS+dBkUGlNR15/5WHKe/8Neawx663qttS6AGqoOUhICc9d1KciBvtrQSuc0PI+CxQ2Q/S1aKuJ+u64GtLdcEZg== dependencies: regenerator-transform "^0.10.0" babel-plugin-transform-strict-mode@^6.24.1: version "6.24.1" resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= + integrity sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" @@ -2033,7 +1606,7 @@ babel-preset-env@^1.7.0: babel-register@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= + integrity sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A== dependencies: babel-core "^6.26.0" babel-runtime "^6.26.0" @@ -2046,7 +1619,7 @@ babel-register@^6.26.0: babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== dependencies: core-js "^2.4.0" regenerator-runtime "^0.11.0" @@ -2054,7 +1627,7 @@ babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: babel-template@^6.24.1, babel-template@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= + integrity sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg== dependencies: babel-runtime "^6.26.0" babel-traverse "^6.26.0" @@ -2065,7 +1638,7 @@ babel-template@^6.24.1, babel-template@^6.26.0: babel-traverse@^6.24.1, babel-traverse@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= + integrity sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA== dependencies: babel-code-frame "^6.26.0" babel-messages "^6.23.0" @@ -2080,7 +1653,7 @@ babel-traverse@^6.24.1, babel-traverse@^6.26.0: babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= + integrity sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g== dependencies: babel-runtime "^6.26.0" esutils "^2.0.2" @@ -2090,7 +1663,7 @@ babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: babelify@^7.3.0: version "7.3.0" resolved "https://registry.yarnpkg.com/babelify/-/babelify-7.3.0.tgz#aa56aede7067fd7bd549666ee16dc285087e88e5" - integrity sha1-qlau3nBn/XvVSWZu4W3ChQh+iOU= + integrity sha512-vID8Fz6pPN5pJMdlUnNFSfrlcx5MUule4k9aKs/zbZPyXxMTcRrB0M4Tarw22L8afr8eYSWxDPYCob3TdrqtlA== dependencies: babel-core "^6.0.14" object-assign "^4.0.0" @@ -2103,7 +1676,7 @@ babylon@^6.18.0: backoff@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/backoff/-/backoff-2.5.0.tgz#f616eda9d3e4b66b8ca7fca79f695722c5f8e26f" - integrity sha1-9hbtqdPktmuMp/ynn2lXIsX44m8= + integrity sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA== dependencies: precond "0.2" @@ -2140,7 +1713,7 @@ base@^0.11.1: bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" @@ -2159,13 +1732,6 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== - dependencies: - file-uri-to-path "1.0.0" - bip39@2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/bip39/-/bip39-2.5.0.tgz#51cbd5179460504a63ea3c000db3f787ca051235" @@ -2177,19 +1743,10 @@ bip39@2.5.0: safe-buffer "^5.0.1" unorm "^1.3.3" -bl@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" - integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== - dependencies: - buffer "^5.5.0" - inherits "^2.0.4" - readable-stream "^3.4.0" - blakejs@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.1.1.tgz#bf313053978b2cd4c444a48795710be05c785702" - integrity sha512-bLG6PHOCZJKNshTjGRBvET0vTciwQE6zFKOKKXPDJfwFBd4Ac0yBfPZqcGvGJap50l7ktvlpFqc2jGVaUgbJgg== + version "1.2.1" + resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" + integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== bluebird@^3.5.0, bluebird@^3.5.2: version "3.7.2" @@ -2199,38 +1756,35 @@ bluebird@^3.5.0, bluebird@^3.5.2: bn.js@4.11.6: version "4.11.6" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" - integrity sha1-UzRK2xRhehP26N0s4okF0cC6MhU= + integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.10.0, bn.js@^4.11.0, bn.js@^4.11.6, bn.js@^4.11.8, bn.js@^4.11.9, bn.js@^4.8.0: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.0.tgz#358860674396c6997771a9d051fcc1b57d4ae002" - integrity sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw== - -bn.js@^5.2.1: +bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.1.2, bn.js@^5.2.0, bn.js@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -body-parser@1.19.2, body-parser@^1.16.0: - version "1.19.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" - integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== +body-parser@1.20.0, body-parser@^1.16.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" + integrity sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg== dependencies: bytes "3.1.2" content-type "~1.0.4" debug "2.6.9" - depd "~1.1.2" - http-errors "1.8.1" + depd "2.0.0" + destroy "1.2.0" + http-errors "2.0.0" iconv-lite "0.4.24" - on-finished "~2.3.0" - qs "6.9.7" - raw-body "2.4.3" + on-finished "2.4.1" + qs "6.10.3" + raw-body "2.5.1" type-is "~1.6.18" + unpipe "1.0.0" brace-expansion@^1.1.7: version "1.1.11" @@ -2240,6 +1794,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@^2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" @@ -2256,7 +1817,7 @@ braces@^2.3.1: split-string "^3.0.2" to-regex "^3.0.1" -braces@^3.0.1, braces@~3.0.2: +braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== @@ -2266,7 +1827,7 @@ braces@^3.0.1, braces@~3.0.2: brorand@^1.0.1, brorand@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== browser-stdout@1.3.1: version "1.3.1" @@ -2338,7 +1899,7 @@ browserslist@^3.2.6: bs58@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/bs58/-/bs58-4.0.1.tgz#be161e76c354f6f788ae4071f63f34e8c4f0a42a" - integrity sha1-vhYedsNU9veIrkBx9j806MTwpCo= + integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== dependencies: base-x "^3.0.2" @@ -2359,17 +1920,17 @@ buffer-from@^1.0.0: buffer-reverse@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-reverse/-/buffer-reverse-1.0.1.tgz#49283c8efa6f901bc01fa3304d06027971ae2f60" - integrity sha1-SSg8jvpvkBvAH6MwTQYCeXGuL2A= + integrity sha512-M87YIUBsZ6N924W57vDwT/aOu8hw7ZgdByz6ijksLjmHJELBASmYTTlNHRgjE+pTsT9oJXGaDSgqqwfdHotDUg== buffer-to-arraybuffer@^0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/buffer-to-arraybuffer/-/buffer-to-arraybuffer-0.0.5.tgz#6064a40fa76eb43c723aba9ef8f6e1216d10511a" - integrity sha1-YGSkD6dutDxyOrqe+PbhIW0QURo= + integrity sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ== buffer-xor@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== buffer-xor@^2.0.1: version "2.0.2" @@ -2406,14 +1967,14 @@ bytes@3.1.2: bytewise-core@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/bytewise-core/-/bytewise-core-1.2.3.tgz#3fb410c7e91558eb1ab22a82834577aa6bd61d42" - integrity sha1-P7QQx+kVWOsasiqCg0V3qmvWHUI= + integrity sha512-nZD//kc78OOxeYtRlVk8/zXqTB4gf/nlguL1ggWA8FuchMyOxcyHR4QPQZMUmA7czC+YnaBrPUCubqAWe50DaA== dependencies: typewise-core "^1.2" bytewise@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/bytewise/-/bytewise-1.1.0.tgz#1d13cbff717ae7158094aa881b35d081b387253e" - integrity sha1-HRPL/3F65xWAlKqIGzXQgbOHJT4= + integrity sha512-rHuuseJ9iQ0na6UDhnrRVDh8YnWVlU6xM3VH6q/+yHDeUH2zIhUzP+2/h3LIrhLDBtTqzWpE3p3tP/boefskKQ== dependencies: bytewise-core "^1.2.2" typewise "^1.0.3" @@ -2449,7 +2010,7 @@ cacheable-request@^6.0.0: cachedown@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cachedown/-/cachedown-1.0.0.tgz#d43f036e4510696b31246d7db31ebf0f7ac32d15" - integrity sha1-1D8DbkUQaWsxJG19sx6/D3rDLRU= + integrity sha512-t+yVk82vQWCJF3PsWHMld+jhhjkkWjcAzz8NbFx1iULOXWl8Tm/FdM4smZNVw3MRr0X+lVTx9PKzvEn4Ng19RQ== dependencies: abstract-leveldown "^2.4.1" lru-cache "^3.2.0" @@ -2465,22 +2026,22 @@ call-bind@^1.0.0, call-bind@^1.0.2, call-bind@~1.0.2: camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" - integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= + integrity sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg== -camelcase@^5.0.0: - version "5.3.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30000844: - version "1.0.30001312" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001312.tgz#e11eba4b87e24d22697dae05455d5aea28550d5f" - integrity sha512-Wiz1Psk2MEK0pX3rUzWaunLTZzqS2JYZFzNKqAiJGiuxIjRPLgV6+VDPOg6lQOUxmDwhTlh198JsTTi8Hzw6aQ== + version "1.0.30001370" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001370.tgz#0a30d4f20d38b9e108cc5ae7cc62df9fe66cd5ba" + integrity sha512-3PDmaP56wz/qz7G508xzjx8C+MC2qEm4SYhSEzC9IBROo+dGXFWRuaXkWti0A9tuI00g+toiriVqxtWMgl350g== caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== chai@^4.3.4, chai@^4.3.6: version "4.3.6" @@ -2498,7 +2059,7 @@ chai@^4.3.4, chai@^4.3.6: chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -2515,34 +2076,27 @@ chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" - integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= + integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA== checkpoint-store@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/checkpoint-store/-/checkpoint-store-1.1.0.tgz#04e4cb516b91433893581e6d4601a78e9552ea06" - integrity sha1-BOTLUWuRQziTWB5tRgGnjpVS6gY= + integrity sha512-J/NdY2WvIx654cc6LWSq/IYFFCUf75fFTgwzFnmbqyORH4MwgiQCgswLLKBGzmsyTI5V7i5bp/So6sMbDWhedg== dependencies: functional-red-black-tree "^1.0.1" -chokidar@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.0.tgz#12c0714668c55800f659e262d4962a97faf554a6" - integrity sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A== - dependencies: - anymatch "~3.1.1" - braces "~3.0.2" - glob-parent "~5.1.0" - is-binary-path "~2.1.0" - is-glob "~4.0.1" - normalize-path "~3.0.0" - readdirp "~3.2.0" - optionalDependencies: - fsevents "~2.1.1" - -chokidar@^3.4.0: +chokidar@3.5.3, chokidar@^3.4.0: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== @@ -2557,7 +2111,7 @@ chokidar@^3.4.0: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.1, chownr@^1.1.4: +chownr@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== @@ -2601,45 +2155,50 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" - integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= + integrity sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w== dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" wrap-ansi "^2.0.0" -cliui@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" - integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: - string-width "^3.1.0" - strip-ansi "^5.2.0" - wrap-ansi "^5.1.0" + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" clone-response@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + version "1.0.3" + resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.3.tgz#af2032aa47816399cf5f0a1d0db902f517abb8c3" + integrity sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA== dependencies: mimic-response "^1.0.0" clone@2.1.2, clone@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + integrity sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA== collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" object-visit "^1.0.0" @@ -2651,10 +2210,22 @@ color-convert@^1.9.0: dependencies: color-name "1.1.3" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" @@ -2690,7 +2261,7 @@ component-emitter@^1.2.1: concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" - integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== concat-stream@^1.5.1: version "1.6.2" @@ -2702,11 +2273,6 @@ concat-stream@^1.5.1: readable-stream "^2.2.2" typedarray "^0.0.6" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= - content-disposition@0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" @@ -2738,9 +2304,14 @@ convert-source-map@^1.5.1: cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.4.2, cookie@^0.4.1: +cookie@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" + integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== + +cookie@^0.4.1: version "0.4.2" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== @@ -2753,12 +2324,12 @@ cookiejar@^2.1.1: copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== core-js-pure@^3.0.1: - version "3.21.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" - integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== + version "3.24.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.24.0.tgz#10eeb90dbf0d670a6b22b081aecc7deb2faec7e1" + integrity sha512-uzMmW8cRh7uYw4JQtzqvGWRyC2T5+4zipQLQdi2FmiRqP83k3d6F3stv2iAlNhOs6cXN401FCD5TL0vvleuHgA== core-js@^2.4.0, core-js@^2.5.0: version "2.6.12" @@ -2768,7 +2339,7 @@ core-js@^2.4.0, core-js@^2.5.0: core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== core-util-is@~1.0.0: version "1.0.3" @@ -2784,12 +2355,9 @@ cors@^2.8.1: vary "^1" crc-32@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.1.tgz#436d2bcaad27bcb6bd073a2587139d3024a16460" - integrity sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w== - dependencies: - exit-on-epipe "~1.0.1" - printj "~1.3.1" + version "1.2.2" + resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" + integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== create-ecdh@^4.0.0: version "4.0.4" @@ -2823,12 +2391,12 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: sha.js "^2.4.8" cross-fetch@^2.1.0, cross-fetch@^2.1.1: - version "2.2.5" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-2.2.5.tgz#afaf5729f3b6c78d89c9296115c9f142541a5705" - integrity sha512-xqYAhQb4NhCJSRym03dwxpP1bYXpK3y7UN83Bo2WFi3x1Zmzn0SL/6xGoPr+gpt4WmNrgCCX3HPysvOwFOW36w== + version "2.2.6" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-2.2.6.tgz#2ef0bb39a24ac034787965c457368a28730e220a" + integrity sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA== dependencies: - node-fetch "2.6.1" - whatwg-fetch "2.0.4" + node-fetch "^2.6.7" + whatwg-fetch "^2.0.4" cross-spawn@^6.0.5: version "6.0.5" @@ -2874,7 +2442,7 @@ d@1, d@^1.0.1: dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== dependencies: assert-plus "^1.0.0" @@ -2892,10 +2460,10 @@ debug@3.2.6: dependencies: ms "^2.1.1" -debug@4, debug@^4.1.1, debug@^4.3.3: - version "4.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" - integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== +debug@4, debug@4.3.4, debug@^4.1.1, debug@^4.3.3: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" @@ -2906,30 +2474,28 @@ debug@^3.1.0: dependencies: ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.2.0: +decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decamelize@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" + integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== decompress-response@^3.2.0, decompress-response@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + integrity sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA== dependencies: mimic-response "^1.0.0" -decompress-response@^4.2.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-4.2.1.tgz#414023cc7a302da25ce2ec82d0d5238ccafd8986" - integrity sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw== - dependencies: - mimic-response "^2.0.0" - deep-eql@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" @@ -2949,11 +2515,6 @@ deep-equal@~1.1.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - defer-to-connect@^1.0.1: version "1.1.3" resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" @@ -2982,24 +2543,25 @@ deferred-leveldown@~5.3.0: abstract-leveldown "~6.2.1" inherits "^2.0.3" -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== +define-properties@^1.1.3, define-properties@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1" + integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA== dependencies: - object-keys "^1.0.12" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" define-property@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: is-descriptor "^0.1.0" define-property@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" @@ -3014,28 +2576,18 @@ define-property@^2.0.2: defined@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= + integrity sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ== delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== depd@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - des.js@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" @@ -3044,27 +2596,22 @@ des.js@^1.0.0: inherits "^2.0.1" minimalistic-assert "^1.0.0" -destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= +destroy@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detect-indent@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= + integrity sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A== dependencies: repeating "^2.0.0" -detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= - -diff@3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== +diff@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-5.0.0.tgz#7ed6ad76d859d030787ec35855f5b1daf31d852b" + integrity sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w== diffie-hellman@^5.0.0: version "5.0.3" @@ -3081,9 +2628,9 @@ dom-walk@^0.1.0: integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== dotenv@^16.0.0: - version "16.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.0.tgz#c619001253be89ebb638d027b609c75c26e47411" - integrity sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q== + version "16.0.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.1.tgz#8f8f9d94876c35dac989876a5d3a82a267fdce1d" + integrity sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ== dotignore@~0.1.2: version "0.1.2" @@ -3093,14 +2640,14 @@ dotignore@~0.1.2: minimatch "^3.0.4" duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + version "0.1.5" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.5.tgz#0b5e4d7bad5de8901ea4440624c8e1d20099217e" + integrity sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA== ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" @@ -3108,12 +2655,12 @@ ecc-jsbn@~0.1.1: ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.3.47: - version "1.4.73" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.73.tgz#422f6f514315bcace9615903e4a9b6b9fa283137" - integrity sha512-RlCffXkE/LliqfA5m29+dVDPB2r72y2D2egMMfIy3Le8ODrxjuZNVo4NIC2yPL01N4xb4nZQLwzi6Z5tGIGLnA== + version "1.4.199" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.199.tgz#e0384fde79fdda89880e8be58196a9153e04db3b" + integrity sha512-WIGME0Cs7oob3mxsJwHbeWkH0tYkIE/sjkJ8ML2BYmuRcjhRl/q5kVDXG7W9LOOKwzPU5M0LBlXRq9rlSgnNlg== elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3, elliptic@^6.5.4: version "6.5.4" @@ -3128,11 +2675,6 @@ elliptic@6.5.4, elliptic@^6.4.0, elliptic@^6.5.2, elliptic@^6.5.3, elliptic@^6.5 minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -3141,7 +2683,7 @@ emoji-regex@^8.0.0: encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== encoding-down@5.0.4, encoding-down@~5.0.0: version "5.0.4" @@ -3171,7 +2713,7 @@ encoding@^0.1.11: dependencies: iconv-lite "^0.6.2" -end-of-stream@^1.1.0, end-of-stream@^1.4.1: +end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -3204,31 +2746,39 @@ error-ex@^1.2.0: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.19.1: - version "1.19.1" - resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" - integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== +es-abstract@^1.19.0, es-abstract@^1.19.2, es-abstract@^1.19.5, es-abstract@^1.20.1: + version "1.20.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" + integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== dependencies: call-bind "^1.0.2" es-to-primitive "^1.2.1" function-bind "^1.1.1" + function.prototype.name "^1.1.5" get-intrinsic "^1.1.1" get-symbol-description "^1.0.0" has "^1.0.3" - has-symbols "^1.0.2" + has-property-descriptors "^1.0.0" + has-symbols "^1.0.3" internal-slot "^1.0.3" is-callable "^1.2.4" - is-negative-zero "^2.0.1" + is-negative-zero "^2.0.2" is-regex "^1.1.4" - is-shared-array-buffer "^1.0.1" + is-shared-array-buffer "^1.0.2" is-string "^1.0.7" - is-weakref "^1.0.1" - object-inspect "^1.11.0" + is-weakref "^1.0.2" + object-inspect "^1.12.0" object-keys "^1.1.1" object.assign "^4.1.2" - string.prototype.trimend "^1.0.4" - string.prototype.trimstart "^1.0.4" - unbox-primitive "^1.0.1" + regexp.prototype.flags "^1.4.3" + string.prototype.trimend "^1.0.5" + string.prototype.trimstart "^1.0.5" + unbox-primitive "^1.0.2" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== es-to-primitive@^1.2.1: version "1.2.1" @@ -3240,24 +2790,24 @@ es-to-primitive@^1.2.1: is-symbol "^1.0.2" es5-ext@^0.10.35, es5-ext@^0.10.50: - version "0.10.53" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" - integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== + version "0.10.61" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.61.tgz#311de37949ef86b6b0dcea894d1ffedb909d3269" + integrity sha512-yFhIqQAzu2Ca2I4SE2Au3rxVfmohU9Y7wqGR+s7+H7krk26NXhIRAZDgqd6xqjCEFUomDEA3/Bo/7fKmIkW1kA== dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.3" - next-tick "~1.0.0" + es6-iterator "^2.0.3" + es6-symbol "^3.1.3" + next-tick "^1.1.0" -es6-iterator@~2.0.3: +es6-iterator@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== dependencies: d "1" es5-ext "^0.10.35" es6-symbol "^3.1.1" -es6-symbol@^3.1.1, es6-symbol@~3.1.3: +es6-symbol@^3.1.1, es6-symbol@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== @@ -3265,20 +2815,25 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.3: d "^1.0.1" ext "^1.1.2" +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== + +escape-string-regexp@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== esutils@^2.0.2: version "2.0.3" @@ -3288,7 +2843,7 @@ esutils@^2.0.2: etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== eth-block-tracker@^3.0.0: version "3.0.1" @@ -3306,7 +2861,7 @@ eth-block-tracker@^3.0.0: eth-ens-namehash@2.0.8, eth-ens-namehash@^2.0.8: version "2.0.8" resolved "https://registry.yarnpkg.com/eth-ens-namehash/-/eth-ens-namehash-2.0.8.tgz#229ac46eca86d52e0c991e7cb2aef83ff0f68bcf" - integrity sha1-IprEbsqG1S4MmR58sq74P/D2i88= + integrity sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw== dependencies: idna-uts46-hx "^2.3.1" js-sha3 "^0.5.7" @@ -3364,7 +2919,7 @@ eth-lib@^0.1.26: eth-query@^2.0.2, eth-query@^2.1.0, eth-query@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/eth-query/-/eth-query-2.1.2.tgz#d6741d9000106b51510c72db92d6365456a6da5e" - integrity sha1-1nQdkAAQa1FRDHLbktY2VFam2l4= + integrity sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA== dependencies: json-rpc-random-id "^1.0.0" xtend "^4.0.1" @@ -3384,7 +2939,7 @@ eth-sig-util@3.0.0: eth-sig-util@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-1.4.2.tgz#8d958202c7edbaae839707fba6f09ff327606210" - integrity sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA= + integrity sha512-iNZ576iTOGcfllftB73cPB5AN+XUQAT/T8xzsILsghXC1o8gJUqe3RHlcDqagu+biFpYQ61KQrZZJza8eRSYqw== dependencies: ethereumjs-abi "git+https://github.com/ethereumjs/ethereumjs-abi.git" ethereumjs-util "^5.1.1" @@ -3430,9 +2985,9 @@ ethereum-common@0.2.0: ethereum-common@^0.0.18: version "0.0.18" resolved "https://registry.yarnpkg.com/ethereum-common/-/ethereum-common-0.0.18.tgz#2fdc3576f232903358976eb39da783213ff9523f" - integrity sha1-L9w1dvIykDNYl26znaeDIT/5Uj8= + integrity sha512-EoltVQTRNg2Uy4o84qpa2aXymXDJhxm7eos/ACOg0DG4baAbMjhbdAEsx9GeE8sC3XCxnYvrrzZDH8D8MtA2iQ== -ethereum-cryptography@^0.1.2, ethereum-cryptography@^0.1.3: +ethereum-cryptography@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz#8d6143cfc3d74bf79bbd8edecdf29e4ae20dd191" integrity sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ== @@ -3453,21 +3008,31 @@ ethereum-cryptography@^0.1.2, ethereum-cryptography@^0.1.3: secp256k1 "^4.0.1" setimmediate "^1.0.5" -ethereum-waffle@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-3.4.0.tgz#990b3c6c26db9c2dd943bf26750a496f60c04720" - integrity sha512-ADBqZCkoSA5Isk486ntKJVjFEawIiC+3HxNqpJqONvh3YXBTNiRfXvJtGuAFLXPG91QaqkGqILEHANAo7j/olQ== +ethereum-cryptography@^1.0.3: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-1.1.2.tgz#74f2ac0f0f5fe79f012c889b3b8446a9a6264e6d" + integrity sha512-XDSJlg4BD+hq9N2FjvotwUET9Tfxpxc3kWGE2AqUG5vcbeunnbImVk3cj6e/xT3phdW21mE8R5IugU4fspQDcQ== dependencies: - "@ethereum-waffle/chai" "^3.4.0" - "@ethereum-waffle/compiler" "^3.4.0" - "@ethereum-waffle/mock-contract" "^3.3.0" - "@ethereum-waffle/provider" "^3.4.0" + "@noble/hashes" "1.1.2" + "@noble/secp256k1" "1.6.3" + "@scure/bip32" "1.1.0" + "@scure/bip39" "1.1.0" + +ethereum-waffle@^3.4.0: + version "3.4.4" + resolved "https://registry.yarnpkg.com/ethereum-waffle/-/ethereum-waffle-3.4.4.tgz#1378b72040697857b7f5e8f473ca8f97a37b5840" + integrity sha512-PA9+jCjw4WC3Oc5ocSMBj5sXvueWQeAbvCA+hUlb6oFgwwKyq5ka3bWQ7QZcjzIX+TdFkxP4IbFmoY2D8Dkj9Q== + dependencies: + "@ethereum-waffle/chai" "^3.4.4" + "@ethereum-waffle/compiler" "^3.4.4" + "@ethereum-waffle/mock-contract" "^3.4.4" + "@ethereum-waffle/provider" "^3.4.4" ethers "^5.0.1" ethereumjs-abi@0.6.5: version "0.6.5" resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.5.tgz#5a637ef16ab43473fa72a29ad90871405b3f5241" - integrity sha1-WmN+8Wq0NHP6cqKa2QhxQFs/UkE= + integrity sha512-rCjJZ/AE96c/AAZc6O3kaog4FhOsAViaysBxqJNy2+LHP0ttH0zkZ7nXdVHOAyt6lFwLO0nlCwWszysG/ao1+g== dependencies: bn.js "^4.10.0" ethereumjs-util "^4.3.0" @@ -3606,10 +3171,10 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereum rlp "^2.0.0" safe-buffer "^5.1.1" -ethereumjs-util@^7.0.2, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.3, ethereumjs-util@^7.1.4: - version "7.1.4" - resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.4.tgz#a6885bcdd92045b06f596c7626c3e89ab3312458" - integrity sha512-p6KmuPCX4mZIqsQzXfmSx9Y0l2hqf+VkAiwSisW3UKUFdk8ZkAt+AYaor83z2nSi6CU2zSsXMlD80hAbNEGM0A== +ethereumjs-util@^7.0.2, ethereumjs-util@^7.1.0, ethereumjs-util@^7.1.1, ethereumjs-util@^7.1.4, ethereumjs-util@^7.1.5: + version "7.1.5" + resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181" + integrity sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg== dependencies: "@types/bn.js" "^5.1.0" bn.js "^5.1.2" @@ -3670,43 +3235,7 @@ ethereumjs-wallet@0.6.5: utf8 "^3.0.0" uuid "^3.3.2" -ethers@^5.0.1, ethers@^5.0.2, ethers@^5.5.0, ethers@^5.5.2, ethers@^5.5.4: - version "5.5.4" - resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.5.4.tgz#e1155b73376a2f5da448e4a33351b57a885f4352" - integrity sha512-N9IAXsF8iKhgHIC6pquzRgPBJEzc9auw3JoRkaKe+y4Wl/LFBtDDunNe7YmdomontECAcC5APaAgWZBiu1kirw== - dependencies: - "@ethersproject/abi" "5.5.0" - "@ethersproject/abstract-provider" "5.5.1" - "@ethersproject/abstract-signer" "5.5.0" - "@ethersproject/address" "5.5.0" - "@ethersproject/base64" "5.5.0" - "@ethersproject/basex" "5.5.0" - "@ethersproject/bignumber" "5.5.0" - "@ethersproject/bytes" "5.5.0" - "@ethersproject/constants" "5.5.0" - "@ethersproject/contracts" "5.5.0" - "@ethersproject/hash" "5.5.0" - "@ethersproject/hdnode" "5.5.0" - "@ethersproject/json-wallets" "5.5.0" - "@ethersproject/keccak256" "5.5.0" - "@ethersproject/logger" "5.5.0" - "@ethersproject/networks" "5.5.2" - "@ethersproject/pbkdf2" "5.5.0" - "@ethersproject/properties" "5.5.0" - "@ethersproject/providers" "5.5.3" - "@ethersproject/random" "5.5.1" - "@ethersproject/rlp" "5.5.0" - "@ethersproject/sha2" "5.5.0" - "@ethersproject/signing-key" "5.5.0" - "@ethersproject/solidity" "5.5.0" - "@ethersproject/strings" "5.5.0" - "@ethersproject/transactions" "5.5.0" - "@ethersproject/units" "5.5.0" - "@ethersproject/wallet" "5.5.0" - "@ethersproject/web" "5.5.1" - "@ethersproject/wordlists" "5.5.0" - -ethers@^5.6.8: +ethers@^5.0.1, ethers@^5.0.2, ethers@^5.5.2, ethers@^5.5.4, ethers@^5.6.8: version "5.6.9" resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.6.9.tgz#4e12f8dfcb67b88ae7a78a9519b384c23c576a4d" integrity sha512-lMGC2zv9HC5EC+8r429WaWu3uWJUCgUCt8xxKCFqkrFuBDZXDYIdzDUECxzjf2BMF8IVBByY1EBoGSL3RTm8RA== @@ -3745,7 +3274,7 @@ ethers@^5.6.8: ethjs-unit@0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" - integrity sha1-xmWSHkduh7ziqdWIpv4EBbLEFpk= + integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw== dependencies: bn.js "4.11.6" number-to-bn "1.7.0" @@ -3768,7 +3297,7 @@ eventemitter3@4.0.4: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== -events@^3.0.0, events@^3.2.0, events@^3.3.0: +events@^3.0.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== @@ -3781,15 +3310,10 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: md5.js "^1.3.4" safe-buffer "^5.1.1" -exit-on-epipe@~1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz#0bdd92e87d5285d267daa8171d0eb06159689692" - integrity sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw== - expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" define-property "^0.2.5" @@ -3799,43 +3323,39 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expand-template@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" - integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== - express@^4.14.0: - version "4.17.3" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.3.tgz#f6c7302194a4fb54271b73a1fe7a06478c8f85a1" - integrity sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg== + version "4.18.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.18.1.tgz#7797de8b9c72c857b9cd0e14a5eea80666267caf" + integrity sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.19.2" + body-parser "1.20.0" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.4.2" + cookie "0.5.0" cookie-signature "1.0.6" debug "2.6.9" - depd "~1.1.2" + depd "2.0.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "~1.1.2" + 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.3.0" + on-finished "2.4.1" parseurl "~1.3.3" path-to-regexp "0.1.7" proxy-addr "~2.0.7" - qs "6.9.7" + qs "6.10.3" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.17.2" - serve-static "1.14.2" + send "0.18.0" + serve-static "1.15.0" setprototypeof "1.2.0" - statuses "~1.5.0" + statuses "2.0.1" type-is "~1.6.18" utils-merge "1.0.1" vary "~1.1.2" @@ -3850,14 +3370,14 @@ ext@^1.1.2: extend-shallow@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: is-extendable "^0.1.0" extend-shallow@^3.0.0, extend-shallow@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" @@ -3884,7 +3404,7 @@ extglob@^2.0.4: extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== extsprintf@^1.2.0: version "1.4.1" @@ -3894,7 +3414,7 @@ extsprintf@^1.2.0: fake-merkle-patricia-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/fake-merkle-patricia-tree/-/fake-merkle-patricia-tree-1.0.1.tgz#4b8c3acfb520afadf9860b1f14cd8ce3402cddd3" - integrity sha1-S4w6z7Ugr635hgsfFM2M40As3dM= + integrity sha512-Tgq37lkc9pUIgIKw5uitNUKcgcYL3R6JvXtKQbOf/ZSavXbidsksgp/pAY6p//uhw0I4yoMsvTSovvVIsk/qxA== dependencies: checkpoint-store "^1.1.0" @@ -3911,19 +3431,14 @@ fast-json-stable-stringify@^2.0.0: fetch-ponyfill@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz#ae3ce5f732c645eab87e4ae8793414709b239893" - integrity sha1-rjzl9zLGReq4fkroeTQUcJsjmJM= + integrity sha512-knK9sGskIg2T7OnYLdZ2hZXn0CtDrAIBxYQLpmEf0BqfdWnwmM1weccUl5+4EdA44tzNSFAuxITPbXtPehUB3g== dependencies: node-fetch "~1.7.1" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== - fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" is-number "^3.0.0" @@ -3937,38 +3452,39 @@ fill-range@^7.0.1: dependencies: to-regex-range "^5.0.1" -finalhandler@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== +finalhandler@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" + integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== dependencies: debug "2.6.9" encodeurl "~1.0.2" escape-html "~1.0.3" - on-finished "~2.3.0" + on-finished "2.4.1" parseurl "~1.3.3" - statuses "~1.5.0" + statuses "2.0.1" unpipe "~1.0.0" find-replace@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/find-replace/-/find-replace-1.0.3.tgz#b88e7364d2d9c959559f388c66670d6130441fa0" - integrity sha1-uI5zZNLZyVlVnziMZmcNYTBEH6A= + integrity sha512-KrUnjzDCD9426YnCP56zGYy/eieTnhtK6Vn++j+JJzmlsWWwEkDnsyVF575spT6HJ6Ow9tlbT3TQTDsa+O4UWA== dependencies: array-back "^1.0.4" test-value "^2.1.0" -find-up@3.0.0, find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== +find-up@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== dependencies: - locate-path "^3.0.0" + locate-path "^6.0.0" + path-exists "^4.0.0" find-up@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + integrity sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA== dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" @@ -3976,7 +3492,7 @@ find-up@^1.0.0: find-up@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + integrity sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ== dependencies: locate-path "^2.0.0" @@ -3995,22 +3511,20 @@ find-yarn-workspace-root@^2.0.0: dependencies: micromatch "^4.0.2" -flat@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.1.tgz#a392059cc382881ff98642f5da4dde0a959f309b" - integrity sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA== - dependencies: - is-buffer "~2.0.3" +flat@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" + integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== flow-stoplight@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/flow-stoplight/-/flow-stoplight-1.0.0.tgz#4a292c5bcff8b39fa6cc0cb1a853d86f27eeff7b" - integrity sha1-SiksW8/4s5+mzAyxqFPYbyfu/3s= + integrity sha512-rDjbZUKpN8OYhB0IE/vY/I8UWO/602IIJEU/76Tv4LvYnwHCk0BCsvz4eRr9n+FQcri7L5cyaXOo0+/Kh4HisA== follow-redirects@^1.12.1: - version "1.14.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" - integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== + version "1.15.1" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5" + integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA== for-each@^0.3.3, for-each@~0.3.3: version "0.3.3" @@ -4022,12 +3536,12 @@ for-each@^0.3.3, for-each@~0.3.3: for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== form-data@^3.0.0: version "3.0.1" @@ -4065,24 +3579,19 @@ fp-ts@^1.0.0: fragment-cache@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= - -fs-constants@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" - integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== fs-extra@^0.30.0: version "0.30.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" - integrity sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A= + integrity sha512-UvSPKyhMn6LEd/WpUaV9C9t3zATuqoqfWc3QdPhPLb58prN9tqYPlPWi8Krxi44loBoUzlobqZ3+8tGpxxSzwA== dependencies: graceful-fs "^4.1.2" jsonfile "^2.1.0" @@ -4118,12 +3627,7 @@ fs-minipass@^1.2.7: fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= - -fsevents@~2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" - integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@~2.3.2: version "2.3.2" @@ -4135,10 +3639,25 @@ function-bind@^1.1.1: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function.prototype.name@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz#cce0505fe1ffb80503e6f9e46cc64e46a12a9621" + integrity sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.0" + functions-have-names "^1.2.2" + functional-red-black-tree@^1.0.1, functional-red-black-tree@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" - integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== + +functions-have-names@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== ganache-core@^2.13.2: version "2.13.2" @@ -4177,26 +3696,12 @@ ganache-core@^2.13.2: ethereumjs-wallet "0.6.5" web3 "1.2.11" -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - get-caller-file@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== -get-caller-file@^2.0.1: +get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -4204,21 +3709,21 @@ get-caller-file@^2.0.1: get-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" - integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= + integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig== get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" - integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + version "1.1.2" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" + integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== dependencies: function-bind "^1.1.1" has "^1.0.3" - has-symbols "^1.0.1" + has-symbols "^1.0.3" get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" - integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + integrity sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ== get-stream@^4.1.0: version "4.1.0" @@ -4245,31 +3750,26 @@ get-symbol-description@^1.0.0: get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== dependencies: assert-plus "^1.0.0" -github-from-package@0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= - -glob-parent@~5.1.0, glob-parent@~5.1.2: +glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" -glob@7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== +glob@7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" @@ -4279,14 +3779,14 @@ glob@7.1.3: path-is-absolute "^1.0.0" glob@^7.1.2, glob@^7.1.3, glob@~7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^3.1.1" once "^1.3.0" path-is-absolute "^1.0.0" @@ -4341,19 +3841,14 @@ got@^7.1.0: url-to-options "^1.0.1" graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: - version "4.2.9" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" - integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== - -growl@1.10.5: - version "1.10.5" - resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" - integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== har-validator@~5.1.3: version "5.1.5" @@ -4364,23 +3859,24 @@ har-validator@~5.1.3: har-schema "^2.0.0" hardhat@^2.8.4: - version "2.8.4" - resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.8.4.tgz#b12cc8b8ea578fc6cefbcd9683d558adc302152d" - integrity sha512-lEwvQSbhABpKgBTJnRgdZ6nZZRmgKUF2G8aGNaBVIQnJeRZjELnZHLIWXAF1HW0Q1NFCyo9trxOrOuzmiS+r/w== - dependencies: - "@ethereumjs/block" "^3.6.0" - "@ethereumjs/blockchain" "^5.5.0" - "@ethereumjs/common" "^2.6.0" - "@ethereumjs/tx" "^3.4.0" - "@ethereumjs/vm" "^5.6.0" + version "2.10.1" + resolved "https://registry.yarnpkg.com/hardhat/-/hardhat-2.10.1.tgz#37fdc0c96d6a5d16b322269db2ad8f9f115c4046" + integrity sha512-0FN9TyCtn7Lt25SB2ei2G7nA2rZjP+RN6MvFOm+zYwherxLZNo6RbD8nDz88eCbhRapevmXqOiL2nM8INKsjmA== + dependencies: + "@ethereumjs/block" "^3.6.2" + "@ethereumjs/blockchain" "^5.5.2" + "@ethereumjs/common" "^2.6.4" + "@ethereumjs/tx" "^3.5.1" + "@ethereumjs/vm" "^5.9.0" "@ethersproject/abi" "^5.1.2" "@metamask/eth-sig-util" "^4.0.0" "@sentry/node" "^5.18.1" - "@solidity-parser/parser" "^0.14.0" + "@solidity-parser/parser" "^0.14.2" "@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" @@ -4388,21 +3884,20 @@ hardhat@^2.8.4: debug "^4.1.1" enquirer "^2.3.0" env-paths "^2.2.0" - ethereum-cryptography "^0.1.2" + ethereum-cryptography "^1.0.3" ethereumjs-abi "^0.6.8" - ethereumjs-util "^7.1.3" + ethereumjs-util "^7.1.4" find-up "^2.1.0" fp-ts "1.19.3" fs-extra "^7.0.1" - glob "^7.1.3" - https-proxy-agent "^5.0.0" + glob "7.2.0" immutable "^4.0.0-rc.12" io-ts "1.10.4" lodash "^4.17.11" - merkle-patricia-tree "^4.2.2" + merkle-patricia-tree "^4.2.4" mnemonist "^0.38.0" - mocha "^7.2.0" - node-fetch "^2.6.0" + mocha "^10.0.0" + p-map "^4.0.0" qs "^6.7.0" raw-body "^2.4.1" resolve "1.17.0" @@ -4413,35 +3908,48 @@ hardhat@^2.8.4: stacktrace-parser "^0.1.10" "true-case-path" "^2.2.1" tsort "0.0.1" + undici "^5.4.0" uuid "^8.3.2" ws "^7.4.6" has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== dependencies: ansi-regex "^2.0.0" -has-bigints@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" - integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-property-descriptors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861" + integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ== + dependencies: + get-intrinsic "^1.1.1" has-symbol-support-x@^1.4.1: version "1.4.2" resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455" integrity sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw== -has-symbols@^1.0.0, has-symbols@^1.0.1, has-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" - integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== +has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== has-to-string-tag-x@^1.2.0: version "1.4.1" @@ -4457,15 +3965,10 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= - has-value@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" has-values "^0.1.4" @@ -4474,7 +3977,7 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" has-values "^1.0.0" @@ -4483,12 +3986,12 @@ has-value@^1.0.0: has-values@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== has-values@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" kind-of "^4.0.0" @@ -4525,12 +4028,12 @@ he@1.2.0: heap@0.2.6: version "0.2.6" resolved "https://registry.yarnpkg.com/heap/-/heap-0.2.6.tgz#087e1f10b046932fc8594dd9e6d378afc9d1e5ac" - integrity sha1-CH4fELBGky/IWU3Z5tN4r8nR5aw= + integrity sha512-MzzWcnfB1e4EG2vHi3dXHoBupmuXNZzx6pY6HldVS55JKKBoq3xOyzfSaZRkJp37HIhEYC78knabHff3zc4dQQ== hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== dependencies: hash.js "^1.0.3" minimalistic-assert "^1.0.0" @@ -4539,7 +4042,7 @@ hmac-drbg@^1.0.1: home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= + integrity sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg== dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.1" @@ -4554,17 +4057,6 @@ http-cache-semantics@^4.0.0: resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== -http-errors@1.8.1: - version "1.8.1" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" - integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== - dependencies: - depd "~1.1.2" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.1" - http-errors@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" @@ -4579,21 +4071,21 @@ http-errors@2.0.0: http-https@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/http-https/-/http-https-1.0.0.tgz#2f908dd5f1db4068c058cd6e6d4ce392c913389b" - integrity sha1-L5CN1fHbQGjAWM1ubUzjkskTOJs= + integrity sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg== http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" sshpk "^1.7.0" https-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" - integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" debug "4" @@ -4632,17 +4124,22 @@ immediate@^3.2.3: immediate@~3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.2.3.tgz#d140fa8f614659bd6541233097ddaac25cdd991c" - integrity sha1-0UD6j2FGWb1lQSMwl92qwlzdmRw= + integrity sha512-RrGCXRm/fRVqMIhqXrGEX9rRADavPiDFSoMb/k64i9XMk8uH4r/Omi5Ctierj6XzNecwDbO4WuFbDD1zmpl3Tg== immutable@^4.0.0-rc.12: + version "4.1.0" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.1.0.tgz#f795787f0db780183307b9eb2091fcac1f6fafef" + integrity sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ== + +indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.0.0.tgz#b86f78de6adef3608395efb269a91462797e2c23" - integrity sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw== + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" @@ -4652,11 +4149,6 @@ inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, i resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -ini@~1.3.0: - version "1.3.8" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" - integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== - internal-slot@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" @@ -4666,7 +4158,7 @@ internal-slot@^1.0.3: has "^1.0.3" side-channel "^1.0.4" -invariant@2, invariant@^2.2.2: +invariant@^2.2.2: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== @@ -4676,7 +4168,7 @@ invariant@2, invariant@^2.2.2: invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" - integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= + integrity sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ== io-ts@1.10.4: version "1.10.4" @@ -4693,7 +4185,7 @@ ipaddr.js@1.9.1: is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== dependencies: kind-of "^3.0.2" @@ -4715,7 +4207,7 @@ is-arguments@^1.0.4: is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== is-bigint@^1.0.1: version "1.0.4" @@ -4744,11 +4236,6 @@ is-buffer@^1.1.5: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-buffer@~2.0.3: - version "2.0.5" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" - integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== - is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" @@ -4761,17 +4248,17 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" -is-core-module@^2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== +is-core-module@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69" + integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A== dependencies: has "^1.0.3" is-data-descriptor@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== dependencies: kind-of "^3.0.2" @@ -4815,7 +4302,7 @@ is-docker@^2.0.0: is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" @@ -4827,7 +4314,7 @@ is-extendable@^1.0.1: is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-finite@^1.0.0: version "1.1.0" @@ -4837,20 +4324,15 @@ is-finite@^1.0.0: is-fn@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fn/-/is-fn-1.0.0.tgz#9543d5de7bcf5b08a22ec8a20bae6e286d510d8c" - integrity sha1-lUPV3nvPWwiiLsiiC65uKG1RDYw= + integrity sha512-XoFPJQmsAShb3jEQRfzf2rqXavq7fIqF/jOekp308JlThqrODnMpweVSGilKTCXELfLhltGP2AGgbQGVP8F1dg== is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + integrity sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw== dependencies: number-is-nan "^1.0.0" -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= - is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" @@ -4871,24 +4353,24 @@ is-glob@^4.0.1, is-glob@~4.0.1: is-hex-prefixed@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" - integrity sha1-fY035q135dEnFIkTxXPggtd39VQ= + integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA== -is-negative-zero@^2.0.1: +is-negative-zero@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz#7bf6f03a28003b8b3965de3ac26f664d765f3150" integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA== is-number-object@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" - integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== dependencies: has-tostringtag "^1.0.0" is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" @@ -4905,7 +4387,12 @@ is-object@^1.0.1: is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== + +is-plain-obj@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" @@ -4927,15 +4414,17 @@ is-retry-allowed@^1.0.0: resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== -is-shared-array-buffer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" - integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== +is-shared-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" + integrity sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA== + dependencies: + call-bind "^1.0.2" is-stream@^1.0.0, is-stream@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== is-string@^1.0.5, is-string@^1.0.7: version "1.0.7" @@ -4954,7 +4443,12 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== is-url@^1.2.4: version "1.2.4" @@ -4964,9 +4458,9 @@ is-url@^1.2.4: is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + integrity sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q== -is-weakref@^1.0.1: +is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== @@ -4988,34 +4482,34 @@ is-wsl@^2.1.1: isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== dependencies: isarray "1.0.0" isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== isurl@^1.0.0-alpha5: version "1.0.0" @@ -5033,7 +4527,7 @@ js-sha3@0.8.0, js-sha3@^0.8.0: js-sha3@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" - integrity sha1-DU/9gALVMzqrr0oj7tL2N0yfKOc= + integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g== "js-tokens@^3.0.0 || ^4.0.0": version "4.0.0" @@ -5043,35 +4537,34 @@ js-sha3@^0.5.7: js-tokens@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= + integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== -js-yaml@3.13.1: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== +js-yaml@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== dependencies: - argparse "^1.0.7" - esprima "^4.0.0" + argparse "^2.0.1" jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= + integrity sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA== jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + integrity sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ== json-rpc-engine@^3.4.0, json-rpc-engine@^3.6.0: version "3.8.0" @@ -5088,14 +4581,14 @@ json-rpc-engine@^3.4.0, json-rpc-engine@^3.6.0: json-rpc-error@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/json-rpc-error/-/json-rpc-error-2.0.0.tgz#a7af9c202838b5e905c7250e547f1aff77258a02" - integrity sha1-p6+cICg4tekFxyUOVH8a/3cligI= + integrity sha512-EwUeWP+KgAZ/xqFpaP6YDAXMtCJi+o/QQpCQFIYyxr01AdADi2y413eM8hSqJcoQym9WMePAJWoaODEJufC4Ug== dependencies: inherits "^2.0.1" json-rpc-random-id@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz#ba49d96aded1444dbb8da3d203748acbbcdec8c8" - integrity sha1-uknZat7RRE27jaPSA3SKy7zeyMg= + integrity sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA== json-schema-traverse@^0.4.1: version "0.4.1" @@ -5110,38 +4603,38 @@ json-schema@0.4.0: json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" - integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= + integrity sha512-i/J297TW6xyj7sDFa7AmBPkQvLIxWr2kKPWI26tXydnZrzVAocNqn5DMNT1Mzk0vit1V5UkRM7C1KdVNp7Lmcg== dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json5@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= + integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw== jsonfile@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" - integrity sha1-NzaitCi4e72gzIO1P6PWM6NcKug= + integrity sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw== optionalDependencies: graceful-fs "^4.1.6" jsonfile@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== optionalDependencies: graceful-fs "^4.1.6" jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= + integrity sha512-trvBk1ki43VZptdBI5rIlG4YOzyeH/WefQt5rj1grasPn4iiZWKet8nkgc4GlsAylaztn0qZfUYOiTsASJFdNA== jsprim@^1.2.2: version "1.4.2" @@ -5180,14 +4673,14 @@ keyv@^3.0.0: kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: is-buffer "^1.1.5" kind-of@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" @@ -5211,14 +4704,14 @@ klaw-sync@^6.0.0: klaw@^1.0.0: version "1.3.1" resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" - integrity sha1-QIhDO0azsbolnXh4XY6W9zugJDk= + integrity sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw== optionalDependencies: graceful-fs "^4.1.9" lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" - integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= + integrity sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw== dependencies: invert-kv "^1.0.0" @@ -5272,7 +4765,7 @@ level-iterator-stream@^2.0.3: level-iterator-stream@~1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-1.3.1.tgz#e43b78b1a8143e6fa97a4f485eb8ea530352f2ed" - integrity sha1-5Dt4sagUPm+pek9IXrjqUwNS8u0= + integrity sha512-1qua0RHNtr4nrZBgYlpV0qHHeHpcRRWTxEZJ8xsemoHAXNL5tbooh4tPEEqIqsbWCAJBmUmkwYK/sW5OrFjWWw== dependencies: inherits "^2.0.1" level-errors "^1.0.3" @@ -5362,7 +4855,7 @@ level-supports@~1.0.0: level-ws@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/level-ws/-/level-ws-0.0.0.tgz#372e512177924a00424b0b43aef2bb42496d228b" - integrity sha1-Ny5RIXeSSgBCSwtDrvK7QkltIos= + integrity sha512-XUTaO/+Db51Uiyp/t7fCMGVFOTdtLS/NIACxE/GHsij15mKzxksZifKVjlXDF41JMUP/oM1Oc4YNGdKnc3dVLw== dependencies: readable-stream "~1.0.15" xtend "~2.1.1" @@ -5422,7 +4915,7 @@ levelup@^4.3.2: load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= + integrity sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A== dependencies: graceful-fs "^4.1.2" parse-json "^2.2.0" @@ -5433,50 +4926,50 @@ load-json-file@^1.0.0: locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + integrity sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA== dependencies: p-locate "^2.0.0" path-exists "^3.0.0" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" + p-locate "^5.0.0" lodash.assign@^4.0.3, lodash.assign@^4.0.6: version "4.2.0" resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - integrity sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= + integrity sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw== lodash@4.17.20: version "4.17.20" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== -lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4: +lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-symbols@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4" - integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ== +log-symbols@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: - chalk "^2.4.2" + chalk "^4.1.0" + is-unicode-supported "^0.1.0" looper@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/looper/-/looper-2.0.0.tgz#66cd0c774af3d4fedac53794f742db56da8f09ec" - integrity sha1-Zs0Md0rz1P7axTeU90LbVtqPCew= + integrity sha512-6DzMHJcjbQX/UPHc1rRCBfKlLwDkvuGZ715cIR36wSdYqWXFT35uLXq5P/2orl3tz+t+VOVPxw4yPinQlUDGDQ== looper@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/looper/-/looper-3.0.0.tgz#2efa54c3b1cbaba9b94aee2e5914b0be57fbb749" - integrity sha1-LvpUw7HLq6m5Su4uWRSwvlf7t0k= + integrity sha512-LJ9wplN/uSn72oJRsXTx+snxPet5c8XiZmOKCm906NVYu+ag6SB6vUcnJcWxgnl2NfbIyeobAn7Bwv6xRj2XJg== loose-envify@^1.0.0: version "1.4.0" @@ -5512,41 +5005,34 @@ lru-cache@5.1.1, lru-cache@^5.1.1: lru-cache@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee" - integrity sha1-cXibO39Tmb7IVl3aOKow0qCX7+4= + integrity sha512-91gyOKTc2k66UG6kHiH4h3S2eltcPwE1STVfMYC/NG+nZwf8IIuiamfmpGZjpbbxzSyEJaLC0tNSmhjlQUTJow== dependencies: pseudomap "^1.0.1" -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - lru_map@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/lru_map/-/lru_map-0.3.3.tgz#b5c8351b9464cbd750335a79650a0ec0e56118dd" - integrity sha1-tcg1G5Rky9dQM1p5ZQoOwOVhGN0= + integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ== ltgt@^2.1.2, ltgt@~2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" - integrity sha1-81ypHEk/e3PaDgdJUwTxezH4fuU= + integrity sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA== ltgt@~2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.1.3.tgz#10851a06d9964b971178441c23c9e52698eece34" - integrity sha1-EIUaBtmWS5cReEQcI8nlJpjuzjQ= + integrity sha512-5VjHC5GsENtIi5rbJd+feEpDKhfr7j0odoUR2Uh978g+2p93nd5o34cTjQWohXsPsCZeqoDnIqEf88mPCe0Pfw== map-cache@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== map-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" @@ -5567,12 +5053,12 @@ md5.js@^1.3.4: media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== memdown@^1.0.0: version "1.4.1" resolved "https://registry.yarnpkg.com/memdown/-/memdown-1.4.1.tgz#b4e4e192174664ffbae41361aa500f3119efe215" - integrity sha1-tOThkhdGZP+65BNhqlAPMRnv4hU= + integrity sha512-iVrGHZB8i4OQfM155xx8akvG9FIj+ht14DX5CQkCTG4EHzZ3d3sgckIf/Lm9ivZalEsFuEVnWv2B2WZvbrro2w== dependencies: abstract-leveldown "~2.7.1" functional-red-black-tree "^1.0.1" @@ -5608,12 +5094,12 @@ memdown@~3.0.0: memorystream@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" - integrity sha1-htcJCzDORV1j+64S3aUaR93K+bI= + integrity sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" - integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== merkle-patricia-tree@3.0.0: version "3.0.0" @@ -5642,10 +5128,10 @@ merkle-patricia-tree@^2.1.2, merkle-patricia-tree@^2.3.2: rlp "^2.0.0" semaphore ">=1.0.1" -merkle-patricia-tree@^4.2.2, merkle-patricia-tree@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-4.2.3.tgz#b4e5d485d231f02b255ed79a7852f9d12ee0c09f" - integrity sha512-S4xevdXl5KvdBGgUxhQcxoep0onqXiIhzfwZp4M78kIuJH3Pu9o9IUgqhzSFOR2ykLO6t265026Xb6PY0q2UFQ== +merkle-patricia-tree@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/merkle-patricia-tree/-/merkle-patricia-tree-4.2.4.tgz#ff988d045e2bf3dfa2239f7fabe2d59618d57413" + integrity sha512-eHbf/BG6eGNsqqfbLED9rIqbsF4+sykEaBn6OLNs71tjclbMcMOk1tEPmJKcNcNCLkvbpY/lwyOlizWsqPNo8w== dependencies: "@types/levelup" "^4.3.0" ethereumjs-util "^7.1.4" @@ -5655,9 +5141,9 @@ merkle-patricia-tree@^4.2.2, merkle-patricia-tree@^4.2.3: semaphore-async-await "^1.5.1" merkletreejs@^0.2.27: - version "0.2.31" - resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.31.tgz#c8ae7bebf1678c0f92d6d8266aeddd3d97cc0c37" - integrity sha512-dnK2sE43OebmMe5Qnq1wXvvMIjZjm1u6CcB2KeW6cghlN4p21OpCUr2p56KTVf20KJItNChVsGnimcscp9f+yw== + version "0.2.32" + resolved "https://registry.yarnpkg.com/merkletreejs/-/merkletreejs-0.2.32.tgz#cf1c0760e2904e4a1cc269108d6009459fd06223" + integrity sha512-TostQBiwYRIwSE5++jGmacu3ODcKAgqb0Y/pnIohXS7sWxh1gCkSptbmF1a43faehRDpcHf7J/kv0Ml2D/zblQ== dependencies: bignumber.js "^9.0.1" buffer-reverse "^1.0.1" @@ -5668,7 +5154,7 @@ merkletreejs@^0.2.27: methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== micromatch@^3.1.4: version "3.1.10" @@ -5690,12 +5176,12 @@ micromatch@^3.1.4: to-regex "^3.0.2" micromatch@^4.0.2: - version "4.0.4" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" - integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: - braces "^3.0.1" - picomatch "^2.2.3" + braces "^3.0.2" + picomatch "^2.3.1" miller-rabin@^4.0.0: version "4.0.1" @@ -5705,17 +5191,17 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.51.0: - version "1.51.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" - integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: - version "2.1.34" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" - integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: - mime-db "1.51.0" + mime-db "1.52.0" mime@1.6.0: version "1.6.0" @@ -5727,15 +5213,10 @@ mimic-response@^1.0.0, mimic-response@^1.0.1: resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== -mimic-response@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" - integrity sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== - min-document@^2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" - integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU= + integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== dependencies: dom-walk "^0.1.0" @@ -5747,26 +5228,26 @@ minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: minimalistic-crypto-utils@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== -minimatch@3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" - integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== +minimatch@5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b" + integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g== dependencies: - brace-expansion "^1.1.7" + brace-expansion "^2.0.1" -minimatch@^3.0.4: +minimatch@^3.0.4, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== dependencies: brace-expansion "^1.1.7" -minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@~1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" - integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== +minimist@^1.2.0, minimist@^1.2.6, minimist@~1.2.6: + version "1.2.6" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" + integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== minipass@^2.6.0, minipass@^2.9.0: version "2.9.0" @@ -5791,15 +5272,10 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" - integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== - mkdirp-promise@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1" - integrity sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE= + integrity sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w== dependencies: mkdirp "*" @@ -5808,12 +5284,12 @@ mkdirp@*: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@0.5.5, mkdirp@^0.5.1, mkdirp@^0.5.5: - version "0.5.5" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== +mkdirp@^0.5.1, mkdirp@^0.5.5: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: - minimist "^1.2.5" + minimist "^1.2.6" mnemonist@^0.38.0: version "0.38.5" @@ -5822,35 +5298,33 @@ mnemonist@^0.38.0: dependencies: obliterator "^2.0.0" -mocha@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-7.2.0.tgz#01cc227b00d875ab1eed03a75106689cfed5a604" - integrity sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ== +mocha@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-10.0.0.tgz#205447d8993ec755335c4b13deba3d3a13c4def9" + integrity sha512-0Wl+elVUD43Y0BqPZBzZt8Tnkw9CMUdNYnUsTfOM1vuhJVZL+kiesFYsqwBkEEuEixaiPe5ZQdqDgX2jddhmoA== dependencies: - ansi-colors "3.2.3" + "@ungap/promise-all-settled" "1.1.2" + ansi-colors "4.1.1" browser-stdout "1.3.1" - chokidar "3.3.0" - debug "3.2.6" - diff "3.5.0" - escape-string-regexp "1.0.5" - find-up "3.0.0" - glob "7.1.3" - growl "1.10.5" + 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 "3.13.1" - log-symbols "3.0.0" - minimatch "3.0.4" - mkdirp "0.5.5" - ms "2.1.1" - node-environment-flags "1.0.6" - object.assign "4.1.0" - strip-json-comments "2.0.1" - supports-color "6.0.0" - which "1.3.1" - wide-align "1.1.3" - yargs "13.3.2" - yargs-parser "13.1.2" - yargs-unparser "1.6.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" mock-fs@^4.1.0: version "4.14.0" @@ -5860,12 +5334,7 @@ mock-fs@^4.1.0: ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== ms@2.1.2: version "2.1.2" @@ -5917,15 +5386,15 @@ multihashes@^0.4.15, multihashes@~0.4.15: multibase "^0.7.0" varint "^5.0.0" -nan@^2.14.0: - version "2.15.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" - integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== - nano-json-stream-parser@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f" - integrity sha1-DMj20OK2IrR5xA1JnEbWS3Vcb18= + integrity sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew== + +nanoid@3.3.3: + version "3.3.3" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25" + integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w== nanomatch@^1.2.9: version "1.2.13" @@ -5944,62 +5413,27 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" -napi-build-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" - integrity sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== - negotiator@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -next-tick@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= +next-tick@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" + integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== nice-try@^1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== -node-abi@^2.18.0, node-abi@^2.21.0, node-abi@^2.7.0: - version "2.30.1" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.30.1.tgz#c437d4b1fe0e285aaf290d45b45d4d7afedac4cf" - integrity sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w== - dependencies: - semver "^5.4.1" - node-addon-api@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32" integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA== -node-addon-api@^3.0.2: - version "3.2.1" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" - integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== - -node-addon-api@^4.2.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-4.3.0.tgz#52a1a0b475193e0928e98e0426a0d1254782b77f" - integrity sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ== - -node-environment-flags@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.6.tgz#a30ac13621f6f7d674260a54dede048c3982c088" - integrity sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw== - dependencies: - object.getownpropertydescriptors "^2.0.3" - semver "^5.7.0" - -node-fetch@2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" - integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== - -node-fetch@^2.6.0, node-fetch@^2.6.1: +node-fetch@^2.6.1, node-fetch@^2.6.7: version "2.6.7" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== @@ -6015,33 +5449,9 @@ node-fetch@~1.7.1: is-stream "^1.0.1" node-gyp-build@^4.2.0, node-gyp-build@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" - integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q== - -node-hid@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/node-hid/-/node-hid-1.3.0.tgz#346a468505cee13d69ccd760052cbaf749f66a41" - integrity sha512-BA6G4V84kiNd1uAChub/Z/5s/xS3EHBCxotQ0nyYrUG65mXewUDHE1tWOSqA2dp3N+mV0Ffq9wo2AW9t4p/G7g== - dependencies: - bindings "^1.5.0" - nan "^2.14.0" - node-abi "^2.18.0" - prebuild-install "^5.3.4" - -node-hid@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/node-hid/-/node-hid-2.1.1.tgz#f83c8aa0bb4e6758b5f7383542477da93f67359d" - integrity sha512-Skzhqow7hyLZU93eIPthM9yjot9lszg9xrKxESleEs05V2NcbUptZc5HFqzjOkSmL0sFlZFr3kmvaYebx06wrw== - dependencies: - bindings "^1.5.0" - node-addon-api "^3.0.2" - prebuild-install "^6.0.0" - -noop-logger@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/noop-logger/-/noop-logger-0.1.1.tgz#94a2b1633c4f1317553007d8966fd0e841b6a4c2" - integrity sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= + version "4.5.0" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40" + integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== normalize-package-data@^2.3.2: version "2.5.0" @@ -6063,25 +5473,15 @@ normalize-url@^4.1.0: resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== -npmlog@^4.0.1: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + integrity sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ== number-to-bn@1.7.0: version "1.7.0" resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" - integrity sha1-uzYjWS9+X54AMLGXe9QaDFP+HqA= + integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig== dependencies: bn.js "4.11.6" strip-hex-prefix "1.0.0" @@ -6094,21 +5494,21 @@ oauth-sign@~0.9.0: object-assign@^4, object-assign@^4.0.0, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-copy@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.11.0, object-inspect@^1.9.0, object-inspect@~1.12.0: - version "1.12.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" - integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== +object-inspect@^1.12.0, object-inspect@^1.9.0, object-inspect@~1.12.0: + version "1.12.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" + integrity sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ== object-is@^1.0.1: version "1.1.5" @@ -6118,7 +5518,7 @@ object-is@^1.0.1: call-bind "^1.0.2" define-properties "^1.1.3" -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== @@ -6126,25 +5526,15 @@ object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: object-keys@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" - integrity sha1-KKaq50KN0sOpLz2V8hM13SBOAzY= + integrity sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw== object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" -object.assign@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" - object.assign@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" @@ -6155,45 +5545,46 @@ object.assign@^4.1.2: has-symbols "^1.0.1" object-keys "^1.1.1" -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.1: - version "2.1.3" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" - integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== +object.getownpropertydescriptors@^2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.4.tgz#7965e6437a57278b587383831a9b829455a4bc37" + integrity sha512-sccv3L/pMModT6dJAYF3fzGMVcb38ysQ0tEE6ixv2yXJDtEIPph268OlAdJj5/qZMZDq2g/jqvwppt36uS/uQQ== dependencies: + array.prototype.reduce "^1.0.4" call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.20.1" object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" obliterator@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.2.tgz#25f50dc92e1181371b9d8209d11890f1a3c2fc21" - integrity sha512-g0TrA7SbUggROhDPK8cEu/qpItwH2LSKcNl4tlfBNT54XY+nOsqrs0Q68h1V9b3HOSpIWv15jb1lax2hAggdIg== + version "2.0.4" + resolved "https://registry.yarnpkg.com/obliterator/-/obliterator-2.0.4.tgz#fa650e019b2d075d745e44f1effeb13a2adbe816" + integrity sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ== oboe@2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.4.tgz#20c88cdb0c15371bb04119257d4fdd34b0aa49f6" - integrity sha1-IMiM2wwVNxuwQRklfU/dNLCqSfY= + integrity sha512-ymBJ4xSC6GBXLT9Y7lirj+xbqBLa+jADGJldGEYG7u8sZbS9GyG+u1Xk9c5cbriKwSpCg41qUhPjvU5xOpvIyQ== dependencies: http-https "^1.0.0" -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= +on-finished@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: ee-first "1.1.1" once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" @@ -6208,19 +5599,19 @@ open@^7.4.2: os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== os-locale@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" - integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= + integrity sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g== dependencies: lcid "^1.0.0" os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== p-cancelable@^0.3.0: version "0.3.0" @@ -6235,7 +5626,7 @@ p-cancelable@^1.0.0: p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== p-limit@^1.1.0: version "1.3.0" @@ -6244,43 +5635,45 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: - p-try "^2.0.0" + yocto-queue "^0.1.0" p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + integrity sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg== dependencies: p-limit "^1.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: - p-limit "^2.0.0" + aggregate-error "^3.0.0" p-timeout@^1.1.1: version "1.2.1" resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-1.2.1.tgz#5eb3b353b7fce99f101a1038880bb054ebbea386" - integrity sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y= + integrity sha512-gb0ryzr+K2qFqFv6qi3khoeqMZF/+ajxQipEF6NteZVnvz9tzdsfAVj3lYtn1gAXvH5lfLwfxEII799gt/mRIA== dependencies: p-finally "^1.0.0" p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - -p-try@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + integrity sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww== parse-asn1@^5.0.0, parse-asn1@^5.1.5: version "5.1.6" @@ -6294,14 +5687,14 @@ parse-asn1@^5.0.0, parse-asn1@^5.1.5: safe-buffer "^5.1.1" parse-headers@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.4.tgz#9eaf2d02bed2d1eff494331ce3df36d7924760bf" - integrity sha512-psZ9iZoCNFLrgRjZ1d8mn0h9WRqJwFxM9q3x7iUjN/YT2OksthDJ5TiPCu2F38kS4zutqfW+YdVVkBZZx3/1aw== + version "2.0.5" + resolved "https://registry.yarnpkg.com/parse-headers/-/parse-headers-2.0.5.tgz#069793f9356a54008571eb7f9761153e6c770da9" + integrity sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA== parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" - integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + integrity sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ== dependencies: error-ex "^1.2.0" @@ -6313,7 +5706,7 @@ parseurl@~1.3.3: pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== patch-package@6.2.2: version "6.2.2" @@ -6360,24 +5753,29 @@ path-browserify@^1.0.0: path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + integrity sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ== dependencies: pinkie-promise "^2.0.0" path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== path-parse@^1.0.6, path-parse@^1.0.7: version "1.0.7" @@ -6387,12 +5785,12 @@ path-parse@^1.0.6, path-parse@^1.0.7: path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" - integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= + integrity sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg== dependencies: graceful-fs "^4.1.2" pify "^2.0.0" @@ -6417,9 +5815,9 @@ pbkdf2@^3.0.17, pbkdf2@^3.0.3, pbkdf2@^3.0.9: performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -6427,94 +5825,49 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw== dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== postinstall-postinstall@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/postinstall-postinstall/-/postinstall-postinstall-2.1.0.tgz#4f7f77441ef539d1512c40bd04c71b06a4704ca3" integrity sha512-7hQX6ZlZXIoRiWNrbMQaLzUUfH+sSx39u8EJ9HYuDc1kLo9IXKWjM5RSquZN1ad5GnH8CGFM78fsAAQi3OKEEQ== -prebuild-install@^5.3.4: - version "5.3.6" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-5.3.6.tgz#7c225568d864c71d89d07f8796042733a3f54291" - integrity sha512-s8Aai8++QQGi4sSbs/M1Qku62PFK49Jm1CbgXklGz4nmHveDq0wzJkg7Na5QbnO1uNH8K7iqx2EQ/mV0MZEmOg== - dependencies: - detect-libc "^1.0.3" - expand-template "^2.0.3" - github-from-package "0.0.0" - minimist "^1.2.3" - mkdirp-classic "^0.5.3" - napi-build-utils "^1.0.1" - node-abi "^2.7.0" - noop-logger "^0.1.1" - npmlog "^4.0.1" - pump "^3.0.0" - rc "^1.2.7" - simple-get "^3.0.3" - tar-fs "^2.0.0" - tunnel-agent "^0.6.0" - which-pm-runs "^1.0.0" - -prebuild-install@^6.0.0: - version "6.1.4" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-6.1.4.tgz#ae3c0142ad611d58570b89af4986088a4937e00f" - integrity sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ== - dependencies: - detect-libc "^1.0.3" - expand-template "^2.0.3" - github-from-package "0.0.0" - minimist "^1.2.3" - mkdirp-classic "^0.5.3" - napi-build-utils "^1.0.1" - node-abi "^2.21.0" - npmlog "^4.0.1" - pump "^3.0.0" - rc "^1.2.7" - simple-get "^3.0.3" - tar-fs "^2.0.0" - tunnel-agent "^0.6.0" - precond@0.2: version "0.2.3" resolved "https://registry.yarnpkg.com/precond/-/precond-0.2.3.tgz#aa9591bcaa24923f1e0f4849d240f47efc1075ac" - integrity sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw= + integrity sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ== prepend-http@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + integrity sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg== prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== prettier@^2.1.2: - version "2.5.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" - integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== - -printj@~1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/printj/-/printj-1.3.1.tgz#9af6b1d55647a1587ac44f4c1654a4b95b8e12cb" - integrity sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg== + version "2.7.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== private@^0.1.6, private@^0.1.8: version "0.1.8" @@ -6529,12 +5882,12 @@ process-nextick-args@~2.0.0: process@^0.11.10: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== promise-to-callback@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/promise-to-callback/-/promise-to-callback-1.0.0.tgz#5d2a749010bfb67d963598fcd3960746a68feef7" - integrity sha1-XSp0kBC/tn2WNZj805YHRqaP7vc= + integrity sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA== dependencies: is-fn "^1.0.0" set-immediate-shim "^1.0.1" @@ -6550,17 +5903,17 @@ proxy-addr@~2.0.7: prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== pseudomap@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28: - version "1.8.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== public-encrypt@^4.0.0: version "4.0.3" @@ -6577,7 +5930,7 @@ public-encrypt@^4.0.0: pull-cat@^1.1.9: version "1.1.11" resolved "https://registry.yarnpkg.com/pull-cat/-/pull-cat-1.1.11.tgz#b642dd1255da376a706b6db4fa962f5fdb74c31b" - integrity sha1-tkLdElXaN2pwa220+pYvX9t0wxs= + integrity sha512-i3w+xZ3DCtTVz8S62hBOuNLRHqVDsHMNZmgrZsjPnsxXUgbWtXEee84lo1XswE7W2a3WHyqsNuDJTjVLAQR8xg== pull-defer@^0.2.2: version "0.2.3" @@ -6600,7 +5953,7 @@ pull-level@^2.0.3: pull-live@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/pull-live/-/pull-live-1.0.1.tgz#a4ecee01e330155e9124bbbcf4761f21b38f51f5" - integrity sha1-pOzuAeMwFV6RJLu89HYfIbOPUfU= + integrity sha512-tkNz1QT5gId8aPhV5+dmwoIiA1nmfDOzJDlOOUpU5DNusj6neNd3EePybJ5+sITr2FwyCs/FVpx74YMCfc8YeA== dependencies: pull-cat "^1.1.9" pull-stream "^3.4.0" @@ -6608,7 +5961,7 @@ pull-live@^1.0.1: pull-pushable@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/pull-pushable/-/pull-pushable-2.2.0.tgz#5f2f3aed47ad86919f01b12a2e99d6f1bd776581" - integrity sha1-Xy867UethpGfAbEqLpnW8b13ZYE= + integrity sha512-M7dp95enQ2kaHvfCt2+DJfyzgCSpWVR2h2kWYnVsW6ZpxQBx5wOu0QWOvQPVoPnBLUZYitYP2y7HyHkLQNeGXg== pull-stream@^3.2.3, pull-stream@^3.4.0, pull-stream@^3.6.8: version "3.6.14" @@ -6618,7 +5971,7 @@ pull-stream@^3.2.3, pull-stream@^3.4.0, pull-stream@^3.6.8: pull-window@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/pull-window/-/pull-window-2.1.4.tgz#fc3b86feebd1920c7ae297691e23f705f88552f0" - integrity sha1-/DuG/uvRkgx64pdpHiP3BfiFUvA= + integrity sha512-cbDzN76BMlcGG46OImrgpkMf/VkCnupj8JhsrpBw3aWBM9ye345aYnqitmZCgauBkc0HbbRRn9hCnsa3k2FNUg== dependencies: looper "^2.0.0" @@ -6633,30 +5986,32 @@ pump@^3.0.0: punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== punycode@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" - integrity sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0= + integrity sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA== punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -qs@6.9.7: - version "6.9.7" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" - integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== - -qs@^6.7.0: +qs@6.10.3: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== dependencies: side-channel "^1.0.4" +qs@^6.7.0: + version "6.11.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" + integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== + dependencies: + side-channel "^1.0.4" + qs@~6.5.2: version "6.5.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" @@ -6674,7 +6029,7 @@ query-string@^5.0.1: querystring@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.0.6, randombytes@^2.1.0: version "2.1.0" @@ -6696,40 +6051,20 @@ range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.4.3: - version "2.4.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" - integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== - dependencies: - bytes "3.1.2" - http-errors "1.8.1" - iconv-lite "0.4.24" - unpipe "1.0.0" - -raw-body@^2.4.1: - version "2.5.0" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.0.tgz#865890d9435243e9fe6141feb4decf929a6e1525" - integrity sha512-XpyZ6O7PVu3ItMQl0LslfsRoKxMOxi3SzDkrOtxMES5AqLFpYjQCryxI4LGygUN2jL+RgFsPkMPPlG7cg/47+A== +raw-body@2.5.1, raw-body@^2.4.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857" + integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== dependencies: bytes "3.1.2" http-errors "2.0.0" iconv-lite "0.4.24" unpipe "1.0.0" -rc@^1.2.7: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + integrity sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A== dependencies: find-up "^1.0.0" read-pkg "^1.0.0" @@ -6737,7 +6072,7 @@ read-pkg-up@^1.0.1: read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + integrity sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ== dependencies: load-json-file "^1.0.0" normalize-package-data "^2.3.2" @@ -6746,14 +6081,14 @@ read-pkg@^1.0.0: readable-stream@^1.0.33: version "1.1.14" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" - integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + 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" -readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.2.8, readable-stream@^2.2.9, readable-stream@^2.3.6, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@^2.2.8, readable-stream@^2.2.9, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -6766,7 +6101,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.0.6, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.0, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: +readable-stream@^3.0.6, readable-stream@^3.1.0, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -6778,20 +6113,13 @@ readable-stream@^3.0.6, readable-stream@^3.1.0, readable-stream@^3.1.1, readable readable-stream@~1.0.15: version "1.0.34" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" - integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" -readdirp@~3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz#c30c33352b12c96dfb4b895421a49fd5a9593839" - integrity sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ== - dependencies: - picomatch "^2.0.4" - readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -6826,18 +6154,19 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexp.prototype.flags@^1.2.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.1.tgz#b3f4c0059af9e47eca9f3f660e51d81307e72307" - integrity sha512-pMR7hBVUUGI7PMA37m2ofIdQCsomVnas+Jn5UPGAHQ+/LlwKm/aTLJHdasmHRzlfeZwHiAOaRSo2rbBDm3nNUQ== +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" + integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA== dependencies: call-bind "^1.0.2" define-properties "^1.1.3" + functions-have-names "^1.2.2" regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" - integrity sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= + integrity sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ== dependencies: regenerate "^1.2.1" regjsgen "^0.2.0" @@ -6846,12 +6175,12 @@ regexpu-core@^2.0.0: regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" - integrity sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= + integrity sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g== regjsparser@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" - integrity sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= + integrity sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw== dependencies: jsesc "~0.5.0" @@ -6863,12 +6192,12 @@ repeat-element@^1.1.2: repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== repeating@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + integrity sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A== dependencies: is-finite "^1.0.0" @@ -6901,12 +6230,12 @@ request@^2.79.0, request@^2.85.0: require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== require-from-string@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" - integrity sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg= + integrity sha512-H7AkJWMobeskkttHyhTVtS0fxpFLjxhbfMa6Bk3wimP7sdPRGL3EyCg3sAQenFfAe+xQ+oAc85Nmtvq0ROM83Q== require-from-string@^2.0.0: version "2.0.2" @@ -6916,17 +6245,12 @@ require-from-string@^2.0.0: require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - -require-main-filename@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" - integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + integrity sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug== resolve-url@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve@1.17.0: version "1.17.0" @@ -6936,25 +6260,25 @@ resolve@1.17.0: path-parse "^1.0.6" resolve@^1.10.0, resolve@^1.8.1, resolve@~1.22.0: - version "1.22.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" - integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== dependencies: - is-core-module "^2.8.1" + is-core-module "^2.9.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" responselike@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + integrity sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ== dependencies: lowercase-keys "^1.0.0" resumer@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" - integrity sha1-8ej0YeQGS6Oegq883CqMiT0HZ1k= + integrity sha512-Fn9X8rX8yYF4m81rZCK/5VmrmsSbqS/i3rDLl6ZZHAXgC2nTAx3dhwG8q8odP/RmdLa2YrybDJaAMg+X1ajY3w== dependencies: through "~2.3.4" @@ -6978,7 +6302,7 @@ ripemd160@^2.0.0, ripemd160@^2.0.1: hash-base "^3.0.0" inherits "^2.0.1" -rlp@^2.0.0, rlp@^2.2.1, rlp@^2.2.2, rlp@^2.2.3, rlp@^2.2.4, rlp@^2.2.6, rlp@^2.2.7: +rlp@^2.0.0, rlp@^2.2.1, rlp@^2.2.2, rlp@^2.2.3, rlp@^2.2.4, rlp@^2.2.7: version "2.2.7" resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.7.tgz#33f31c4afac81124ac4b283e2bd4d9720b30beaf" integrity sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ== @@ -6990,13 +6314,6 @@ rustbn.js@~0.2.0: resolved "https://registry.yarnpkg.com/rustbn.js/-/rustbn.js-0.2.0.tgz#8082cb886e707155fd1cb6f23bd591ab8d55d0ca" integrity sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA== -rxjs@6: - version "6.6.7" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" - integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== - dependencies: - tslib "^1.9.0" - safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -7017,7 +6334,7 @@ safe-event-emitter@^1.0.1: safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" @@ -7034,7 +6351,7 @@ scrypt-js@3.0.1, scrypt-js@^3.0.0, scrypt-js@^3.0.1: scryptsy@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/scryptsy/-/scryptsy-1.2.1.tgz#a3225fa4b2524f802700761e2855bdf3b2d92163" - integrity sha1-oyJfpLJST4AnAHYeKFW987LZIWM= + integrity sha512-aldIRgMozSJ/Gl6K6qmJZysRP82lz83Wb42vl4PWN8SaLFHIaOzLPc9nUUW2jQN88CuGm5q5HefJ9jZ3nWSmTw== dependencies: pbkdf2 "^3.0.3" @@ -7055,14 +6372,14 @@ seedrandom@3.0.1: semaphore-async-await@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/semaphore-async-await/-/semaphore-async-await-1.5.1.tgz#857bef5e3644601ca4b9570b87e9df5ca12974fa" - integrity sha1-hXvvXjZEYBykuVcLh+nfXKEpdPo= + integrity sha512-b/ptP11hETwYWpeilHXXQiV5UJNJl7ZWWooKRE5eBIYWoom6dZ0SluCIdCtKycsMtZgKWE01/qAw6jblw1YVhg== semaphore@>=1.0.1, semaphore@^1.0.3, semaphore@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/semaphore/-/semaphore-1.1.0.tgz#aaad8b86b20fe8e9b32b16dc2ee682a8cd26a8aa" integrity sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA== -"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: +"semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0, semver@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -7072,46 +6389,46 @@ semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.3.5: - version "7.3.5" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== - dependencies: - lru-cache "^6.0.0" - semver@~5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" integrity sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== -send@0.17.2: - version "0.17.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" - integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" + 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 "1.8.1" + http-errors "2.0.0" mime "1.6.0" ms "2.1.3" - on-finished "~2.3.0" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" + statuses "2.0.1" + +serialize-javascript@6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" -serve-static@1.14.2: - version "1.14.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.2.tgz#722d6294b1d62626d41b43a013ece4598d292bfa" - integrity sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ== +serve-static@1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.17.2" + send "0.18.0" servify@^0.1.12: version "0.1.12" @@ -7124,15 +6441,15 @@ servify@^0.1.12: request "^2.79.0" xhr "^2.3.3" -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - integrity sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= + integrity sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ== set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" @@ -7147,7 +6464,7 @@ set-value@^2.0.0, set-value@^2.0.1: setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== setprototypeof@1.2.0: version "1.2.0" @@ -7165,14 +6482,14 @@ sha.js@^2.4.0, sha.js@^2.4.8: shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== dependencies: shebang-regex "^1.0.0" shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== side-channel@^1.0.4: version "1.0.4" @@ -7183,11 +6500,6 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0: - version "3.0.7" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - simple-concat@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" @@ -7202,19 +6514,10 @@ simple-get@^2.7.0: once "^1.3.1" simple-concat "^1.0.0" -simple-get@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-3.1.1.tgz#cc7ba77cfbe761036fbfce3d021af25fc5584d55" - integrity sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA== - dependencies: - decompress-response "^4.2.0" - once "^1.3.1" - simple-concat "^1.0.0" - slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= + integrity sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg== slash@^2.0.0: version "2.0.0" @@ -7338,7 +6641,7 @@ source-map-url@^0.4.0: source-map@^0.5.6, source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== source-map@^0.6.0: version "0.6.1" @@ -7378,11 +6681,6 @@ split-string@^3.0.1, split-string@^3.0.2: dependencies: extend-shallow "^3.0.0" -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= - sshpk@^1.7.0: version "1.17.0" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" @@ -7408,7 +6706,7 @@ stacktrace-parser@^0.1.10: static-extend@^0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" @@ -7418,11 +6716,6 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - stream-to-pull-stream@^1.7.1: version "1.7.3" resolved "https://registry.yarnpkg.com/stream-to-pull-stream/-/stream-to-pull-stream-1.7.3.tgz#4161aa2d2eb9964de60bfa1af7feaf917e874ece" @@ -7434,26 +6727,18 @@ stream-to-pull-stream@^1.7.1: strict-uri-encode@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ== string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + integrity sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw== dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2": - version "2.1.1" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" - integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== - dependencies: - is-fullwidth-code-point "^2.0.0" - strip-ansi "^4.0.0" - -"string-width@^1.0.2 || 2 || 3 || 4": +string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -7462,39 +6747,32 @@ string-width@^1.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^3.0.0, string-width@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== - dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" - string.prototype.trim@~1.2.5: - version "1.2.5" - resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.5.tgz#a587bcc8bfad8cb9829a577f5de30dd170c1682c" - integrity sha512-Lnh17webJVsD6ECeovpVN17RlAKjmz4rF9S+8Y45CkMc/ufVpTkU3vZIyIC7sllQ1FCvObZnnCdNs/HXTUOTlg== + version "1.2.6" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.6.tgz#824960787db37a9e24711802ed0c1d1c0254f83e" + integrity sha512-8lMR2m+U0VJTPp6JjvJTtGyc4FIGq9CdRt7O9p6T0e6K4vjU+OP+SQJpbe/SBmRcCUIvNUnjsbmY6lnMp8MhsQ== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" - es-abstract "^1.19.1" + define-properties "^1.1.4" + es-abstract "^1.19.5" -string.prototype.trimend@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" - integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== +string.prototype.trimend@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0" + integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" -string.prototype.trimstart@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" - integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== +string.prototype.trimstart@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef" + integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg== dependencies: call-bind "^1.0.2" - define-properties "^1.1.3" + define-properties "^1.1.4" + es-abstract "^1.19.5" string_decoder@^1.1.1: version "1.3.0" @@ -7506,7 +6784,7 @@ string_decoder@^1.1.1: string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== string_decoder@~1.1.1: version "1.1.1" @@ -7518,25 +6796,11 @@ string_decoder@~1.1.1: strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== dependencies: ansi-regex "^2.0.0" -strip-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" - integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= - dependencies: - ansi-regex "^3.0.0" - -strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== - dependencies: - ansi-regex "^4.1.0" - -strip-ansi@^6.0.1: +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -7546,33 +6810,33 @@ strip-ansi@^6.0.1: strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + integrity sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g== dependencies: is-utf8 "^0.2.0" strip-hex-prefix@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" - integrity sha1-DF8VX+8RUTczd96du1iNoFUA428= + integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A== dependencies: is-hex-prefixed "1.0.0" -strip-json-comments@2.0.1, strip-json-comments@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= +strip-json-comments@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -supports-color@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a" - integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg== +supports-color@8.1.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: - has-flag "^3.0.0" + has-flag "^4.0.0" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== supports-color@^5.3.0: version "5.5.0" @@ -7581,6 +6845,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" @@ -7604,9 +6875,9 @@ swarm-js@^0.1.40: xhr-request "^1.0.1" tape@^4.6.3: - version "4.15.0" - resolved "https://registry.yarnpkg.com/tape/-/tape-4.15.0.tgz#1b8a9563b4bc7e51302216c137732fb2ce6d1a99" - integrity sha512-SfRmG2I8QGGgJE/MCiLH8c11L5XxyUXxwK9xLRD0uiK5fehRkkSZGmR6Y1pxOt8vJ19m3sY+POTQpiaVv45/LQ== + version "4.15.1" + resolved "https://registry.yarnpkg.com/tape/-/tape-4.15.1.tgz#88fb662965a11f9be1bddb04c11662d7eceb129e" + integrity sha512-k7F5pyr91n9D/yjSJwbLLYDCrTWXxMSXbbmHX2n334lSIc2rxeXyFkaBv4UuUd2gBYMrAOalPutAiCxC6q1qbw== dependencies: call-bind "~1.0.2" deep-equal "~1.1.1" @@ -7617,34 +6888,13 @@ tape@^4.6.3: has "~1.0.3" inherits "~2.0.4" is-regex "~1.1.4" - minimist "~1.2.5" + minimist "~1.2.6" object-inspect "~1.12.0" resolve "~1.22.0" resumer "~0.0.0" string.prototype.trim "~1.2.5" through "~2.3.8" -tar-fs@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" - integrity sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng== - dependencies: - chownr "^1.1.1" - mkdirp-classic "^0.5.2" - pump "^3.0.0" - tar-stream "^2.1.4" - -tar-stream@^2.1.4: - version "2.2.0" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" - integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== - dependencies: - bl "^4.0.3" - end-of-stream "^1.4.1" - fs-constants "^1.0.0" - inherits "^2.0.3" - readable-stream "^3.1.1" - tar@^4.0.2: version "4.4.19" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" @@ -7661,7 +6911,7 @@ tar@^4.0.2: test-value@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/test-value/-/test-value-2.1.0.tgz#11da6ff670f3471a73b625ca4f3fdcf7bb748291" - integrity sha1-Edpv9nDzRxpztiXKTz/c97t0gpE= + integrity sha512-+1epbAxtKeXttkGFMTX9H42oqzOTufR1ceCF+GYA5aOmvaPq9wd4PUS8329fn2RRLGNeUkgRLnVpycjx8DsO2w== dependencies: array-back "^1.0.3" typical "^2.6.0" @@ -7682,12 +6932,12 @@ through2@^2.0.3: through@~2.3.4, through@~2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== timed-out@^4.0.0, timed-out@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" - integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + integrity sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA== tmp@0.0.33, tmp@^0.0.33: version "0.0.33" @@ -7706,12 +6956,12 @@ tmp@0.1.0: to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= + integrity sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og== to-object-path@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" @@ -7723,7 +6973,7 @@ to-readable-stream@^1.0.0: to-regex-range@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" repeat-string "^1.6.1" @@ -7761,7 +7011,7 @@ tough-cookie@~2.5.0: tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== treeify@^1.1.0: version "1.1.0" @@ -7771,7 +7021,7 @@ treeify@^1.1.0: trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= + integrity sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw== "true-case-path@^2.2.1": version "2.2.1" @@ -7803,7 +7053,7 @@ ts-generator@^0.1.1: resolve "^1.8.1" ts-essentials "^1.0.0" -tslib@^1.9.0, tslib@^1.9.3: +tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -7811,12 +7061,12 @@ tslib@^1.9.0, tslib@^1.9.3: tsort@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/tsort/-/tsort-0.0.1.tgz#e2280f5e817f8bf4275657fd0f9aebd44f5a2786" - integrity sha1-4igPXoF/i/QnVlf9D5rr1E9aJ4Y= + integrity sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw== tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" @@ -7828,7 +7078,7 @@ tweetnacl-util@^0.15.0, tweetnacl-util@^0.15.1: tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== tweetnacl@^1.0.0, tweetnacl@^1.0.3: version "1.0.3" @@ -7891,48 +7141,43 @@ typedarray-to-buffer@^3.1.5: typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== typewise-core@^1.2, typewise-core@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/typewise-core/-/typewise-core-1.2.0.tgz#97eb91805c7f55d2f941748fa50d315d991ef195" - integrity sha1-l+uRgFx/VdL5QXSPpQ0xXZke8ZU= + integrity sha512-2SCC/WLzj2SbUwzFOzqMCkz5amXLlxtJqDKTICqg30x+2DZxcfZN2MvQZmGfXWKNWaKK9pBPsvkcwv8bF/gxKg== typewise@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/typewise/-/typewise-1.0.3.tgz#1067936540af97937cc5dcf9922486e9fa284651" - integrity sha1-EGeTZUCvl5N8xdz5kiSG6fooRlE= + integrity sha512-aXofE06xGhaQSPzt8hlTY+/YWQhm9P0jYUp1f2XtmW/3Bk0qzXcyFWAtPoo2uTGQj1ZwbDuSyuxicq+aDo8lCQ== dependencies: typewise-core "^1.2.0" typewiselite@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/typewiselite/-/typewiselite-1.0.0.tgz#c8882fa1bb1092c06005a97f34ef5c8508e3664e" - integrity sha1-yIgvobsQksBgBal/NO9chQjjZk4= + integrity sha512-J9alhjVHupW3Wfz6qFRGgQw0N3gr8hOkw6zm7FZ6UR1Cse/oD9/JVok7DNE9TT9IbciDHX2Ex9+ksE6cRmtymw== typical@^2.6.0, typical@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/typical/-/typical-2.6.1.tgz#5c080e5d661cbbe38259d2e70a3c7253e873881d" - integrity sha1-XAgOXWYcu+OCWdLnCjxyU+hziB0= - -u2f-api@0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/u2f-api/-/u2f-api-0.2.7.tgz#17bf196b242f6bf72353d9858e6a7566cc192720" - integrity sha512-fqLNg8vpvLOD5J/z4B6wpPg4Lvowz1nJ9xdHcCzdUPKcFE/qNCceV2gNZxSJd5vhAZemHr/K/hbzVA0zxB5mkg== + integrity sha512-ofhi8kjIje6npGozTip9Fr8iecmYfEbS06i0JnIg+rh51KakryWF4+jX8lLKZVhy6N+ID45WYSFCxPOdTWCzNg== ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== -unbox-primitive@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" - integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== dependencies: - function-bind "^1.1.1" - has-bigints "^1.0.1" - has-symbols "^1.0.2" + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" underscore@1.9.1: @@ -7940,6 +7185,11 @@ underscore@1.9.1: resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961" integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg== +undici@^5.4.0: + version "5.8.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-5.8.0.tgz#dec9a8ccd90e5a1d81d43c0eab6503146d649a4f" + integrity sha512-1F7Vtcez5w/LwH2G2tGnFIihuWUlc58YidwLiCv+jR2Z50x0tNXpRRw7eOIJ+GvqCqIkg9SB7NWAJ/T9TLfv8Q== + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -7963,12 +7213,12 @@ unorm@^1.3.3: unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== unset-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" isobject "^3.0.0" @@ -7983,57 +7233,49 @@ uri-js@^4.2.2: urix@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== url-parse-lax@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= + integrity sha512-BVA4lR5PIviy2PMseNd2jbFQ+jwSwQGdJejf5ctd1rEXt0Ypd7yanUK9+lYechVlN5VaTJGsu2U/3MDDu6KgBA== dependencies: prepend-http "^1.0.1" url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + integrity sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ== dependencies: prepend-http "^2.0.0" url-set-query@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/url-set-query/-/url-set-query-1.0.0.tgz#016e8cfd7c20ee05cafe7795e892bd0702faa339" - integrity sha1-AW6M/Xwg7gXK/neV6JK9BwL6ozk= + integrity sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg== url-to-options@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9" - integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k= + integrity sha512-0kQLIzG4fdk/G5NONku64rSH/x32NOA39LVQqlK8Le6lvTF6GGRJpqaQFGgU+CLwySIqBSMdwYM0sYcW9f6P4A== url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + integrity sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ== dependencies: punycode "1.3.2" querystring "0.2.0" -usb@^1.6.3: - version "1.9.2" - resolved "https://registry.yarnpkg.com/usb/-/usb-1.9.2.tgz#fb6b36f744ecc707a196c45a6ec72442cb6f2b73" - integrity sha512-dryNz030LWBPAf6gj8vyq0Iev3vPbCLHCT8dBw3gQRXRzVNsIdeuU+VjPp3ksmSPkeMAl1k+kQ14Ij0QHyeiAg== - dependencies: - node-addon-api "^4.2.0" - node-gyp-build "^4.3.0" - use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== utf-8-validate@^5.0.2: - version "5.0.8" - resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.8.tgz#4a735a61661dbb1c59a0868c397d2fe263f14e58" - integrity sha512-k4dW/Qja1BYDl2qD4tOMB9PFVha/UJtxTc1cXYOe3WwA/2m0Yn4qB7wLMpJyLJ/7DR0XnTut3HsCSzDT4ZvKgA== + version "5.0.9" + resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.9.tgz#ba16a822fbeedff1a58918f2a6a6b36387493ea3" + integrity sha512-Yek7dAy0v3Kl0orwMlvi7TPtiCNrdfHNd7Gcc/pLq4BLXqfAmd0J7OWMizUQnTTJsyjKn02mU7anqwfmUP4J8Q== dependencies: node-gyp-build "^4.3.0" @@ -8045,7 +7287,7 @@ utf8@3.0.0, utf8@^3.0.0: util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== util.promisify@^1.0.0: version "1.1.1" @@ -8061,7 +7303,7 @@ util.promisify@^1.0.0: utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== uuid@3.3.2: version "3.3.2" @@ -8094,12 +7336,12 @@ varint@^5.0.0: vary@^1, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -8357,25 +7599,12 @@ web3-utils@1.2.11: underscore "1.9.1" utf8 "3.0.0" -web3-utils@^1.0.0-beta.31: - version "1.7.0" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.0.tgz#c59f0fd43b2449357296eb54541810b99b1c771c" - integrity sha512-O8Tl4Ky40Sp6pe89Olk2FsaUkgHyb5QAXuaKo38ms3CxZZ4d3rPGfjP9DNKGm5+IUgAZBNpF1VmlSmNCqfDI1w== - dependencies: - bn.js "^4.11.9" - 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" - -web3-utils@^1.3.4: - version "1.7.1" - resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.1.tgz#77d8bacaf426c66027d8aa4864d77f0ed211aacd" - integrity sha512-fef0EsqMGJUgiHPdX+KN9okVWshbIumyJPmR+btnD1HgvoXijKEkuKBv0OmUqjbeqmLKP2/N9EiXKJel5+E1Dw== +web3-utils@^1.0.0-beta.31, web3-utils@^1.3.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.7.4.tgz#eb6fa3706b058602747228234453811bbee017f5" + integrity sha512-acBdm6Evd0TEZRnChM/MCvGsMwYKmSh7OaUfNf5OKG0CIeGWD/6gqLOWIwmwSnre/2WrA1nKGId5uW2e5EfluA== dependencies: - bn.js "^4.11.9" + bn.js "^5.2.1" ethereum-bloom-filters "^1.0.6" ethereumjs-util "^7.1.0" ethjs-unit "0.1.6" @@ -8399,7 +7628,7 @@ web3@1.2.11: webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== websocket@1.0.32: version "1.0.32" @@ -8425,7 +7654,7 @@ websocket@^1.0.31: utf-8-validate "^5.0.2" yaeti "^0.0.6" -whatwg-fetch@2.0.4: +whatwg-fetch@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" integrity sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng== @@ -8433,7 +7662,7 @@ whatwg-fetch@2.0.4: whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" @@ -8452,65 +7681,46 @@ which-boxed-primitive@^1.0.2: which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" - integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= - -which-module@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" - integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= - -which-pm-runs@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.1.0.tgz#35ccf7b1a0fce87bd8b92a478c9d045785d3bf35" - integrity sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA== + integrity sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ== -which@1.3.1, which@^1.2.9: +which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== dependencies: isexe "^2.0.0" -wide-align@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457" - integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== - dependencies: - string-width "^1.0.2 || 2" - -wide-align@^1.1.0: - version "1.1.5" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" - integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== - dependencies: - string-width "^1.0.2 || 2 || 3 || 4" - window-size@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" - integrity sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU= + integrity sha512-UD7d8HFA2+PZsbKyaOCEy8gMh1oDtHgJh1LfgjQ4zVXmYjAT/kvz3PueITKuqDiIXQe7yzpPnxX3lNc+AhQMyw== + +workerpool@6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343" + integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw== wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= + integrity sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw== dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" -wrap-ansi@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" - integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: - ansi-styles "^3.2.0" - string-width "^3.0.0" - strip-ansi "^5.0.0" + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== ws@7.4.6: version "7.4.6" @@ -8534,9 +7744,9 @@ ws@^5.1.1: async-limiter "~1.0.0" ws@^7.4.6: - version "7.5.7" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" - integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== xhr-request-promise@^0.1.2: version "0.1.3" @@ -8561,7 +7771,7 @@ xhr-request@^1.0.1, xhr-request@^1.1.0: xhr2-cookies@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz#7d77449d0999197f155cb73b23df72505ed89d48" - integrity sha1-fXdEnQmZGX8VXLc7I99yUF7YnUg= + integrity sha512-hjXUA6q+jl/bd8ADHcVfFsSPIf+tyLIjuO9TwJC9WI6JP2zKcS7C+p56I9kCLLsaCiNT035iYvEUUzdEFj/8+g== dependencies: cookiejar "^2.1.1" @@ -8583,7 +7793,7 @@ xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: xtend@~2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" - integrity sha1-bv7MKk2tjmlixJAbM3znuoe10os= + integrity sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ== dependencies: object-keys "~0.4.0" @@ -8592,71 +7802,66 @@ y18n@^3.2.1: resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== -y18n@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" - integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yaeti@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577" - integrity sha1-8m9ITXJoTPQr7ft2lwqhYI+/lXc= + integrity sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug== yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yargs-parser@13.1.2, yargs-parser@^13.1.2: - version "13.1.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" - integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - dependencies: - camelcase "^5.0.0" - decamelize "^1.2.0" +yargs-parser@20.2.4: + version "20.2.4" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== yargs-parser@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" - integrity sha1-hVaN488VD/SfpRgl8DqMiA3cxcQ= + integrity sha512-9pIKIJhnI5tonzG6OnCFlz/yln8xHYcGl+pn3xR0Vzff0vzN1PbNRaelgfgRUwZ3s4i3jvxT9WhmUGL4whnasA== dependencies: camelcase "^3.0.0" lodash.assign "^4.0.6" -yargs-unparser@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" - integrity sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw== - dependencies: - flat "^4.1.0" - lodash "^4.17.15" - yargs "^13.3.0" +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@13.3.2, yargs@^13.3.0: - version "13.3.2" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" - integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== - dependencies: - cliui "^5.0.0" - find-up "^3.0.0" - get-caller-file "^2.0.1" +yargs-unparser@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" + integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== + dependencies: + camelcase "^6.0.0" + decamelize "^4.0.0" + flat "^5.0.2" + is-plain-obj "^2.1.0" + +yargs@16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" require-directory "^2.1.1" - require-main-filename "^2.0.0" - set-blocking "^2.0.0" - string-width "^3.0.0" - which-module "^2.0.0" - y18n "^4.0.0" - yargs-parser "^13.1.2" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" yargs@^4.7.1: version "4.8.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" - integrity sha1-wMQpJMpKqmsObaFznfshZDn53cA= + integrity sha512-LqodLrnIDM3IFT+Hf/5sxBnEGECrfdC1uIbgZeJmESCSo4HoCAaKEus8MylXHAkdacGc0ye+Qa+dpkuom8uVYA== dependencies: cliui "^3.2.0" decamelize "^1.1.1" @@ -8672,3 +7877,8 @@ yargs@^4.7.1: window-size "^0.2.0" y18n "^3.2.1" yargs-parser "^2.4.1" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From c1cb6f59c0258539113f8e3ba92da251077dc8fb Mon Sep 17 00:00:00 2001 From: Ori Pomerantz Date: Wed, 27 Jul 2022 14:27:53 +0000 Subject: [PATCH 4/4] feat(xdom-comm): Removed the last https://goerli.optimism.io --- cross-dom-comm/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cross-dom-comm/README.md b/cross-dom-comm/README.md index 55b58784..e5a5075a 100644 --- a/cross-dom-comm/README.md +++ b/cross-dom-comm/README.md @@ -170,7 +170,7 @@ You can do it using [the Optimism SDK](https://www.npmjs.com/package/@eth-optimi l1ChainId: 5, l2ChainId: 420, l1SignerOrProvider: l1Signer, - l2SignerOrProvider: new ethers.providers.JsonRpcProvider("https://goerli.optimism.io") + l2SignerOrProvider: new ethers.providers.JsonRpcProvider(process.env.OPTI_GOERLI_URL) }) ```